1 (edytowany przez jzef 2016-09-10 11:04:00)

Temat: Cyrki z kamerą Microsoft HD-3000

Ostatnio przeszedłem na OpenWrt CC 15.05.1 na routerze vodafone HG553. Zainstalowałem system z podłączonym z tyłu pendrive'em a później gdy już działał podłączyłem kamerę, zainstalowałem sterowniki kmod-video-core i kmod-video-uvc i kamerka działała super. Ma wbudowany mikrofon i była widziana w systemie tak:

Bus 001 Device 003: ID 045e:0779 Microsoft Corp. LifeCam HD-3000

Skonfigurowałem też diody LED dla usbdev aby zaświecały się gdy podłączam urządzenia USB do portów USB dla czterech szyn 1-1, 1-2, 2-1 i 2-2:
/etc/config/system:

config led 'usb_led1'
    option name 'USB1'
    option sysfs 'HW553:red:adsl'
    option trigger 'usbdev'
    option dev '1-1'
    option interval '50'
    option default '0'

config led 'usb_led2'
    option name 'USB2'
    option sysfs 'HW553:red:hspa'
    option trigger 'usbdev'
    option dev '1-2'
    option interval '50'
    option default '0'

config led 'usb_led3'
    option name 'USB3'
    option sysfs 'HW553:blue:hspa'
    option interval '50'
    option default '0'
    option trigger 'none'

config led 'usb_led4'
    option name 'USB4'
    option trigger 'usbdev'
    option dev '2-2'
    option interval '50'
    option default '0'
    option sysfs 'HW553:blue:lan'

Przy takich ustawieniach świeciła niebieska dioda LAN dla pendrive'a z tyłu USB (diodę dla kamery wyłączyłem bo ciągle migała jak działał MJPG-Streamer).

Dzisiaj wyłączyłem router i włączyłem ponownie (pstryczkiem) i po uruchomieniu się OpenWrt diody zmieniły kolor na czerwony czyli urządzenia USB zostały podłączone do innych szyn USB a kamera przestała działać bo nie ma jej w /dev.

Teraz najlepsze jaja - zrobiłem lsusb i kamera jest ale jako całkiem inne urządzenie z zupełnie innym VID PID:

Bus 001 Device 002: ID 0603:8120 Novatek Microelectronics Corp.

Jak to możliwe?

Odinstalowałem sterowniki kmod-video-videobuf2, kmod-video-core i kmod-video-uvc a następnie zainstalowałem je z powrotem. Niestety kamery nadal nie ma w /dev

Może mi ktoś wyjaśnić co tu się dzieje bo nic z tego nie rozumiem ?! :-(

Aha! W systemie zainstalowane też sterowniki kmod-usb-audio, kmod-sound-core i alsa-utils aby działał też mikrofon.

2 (edytowany przez jzef 2016-09-12 17:30:28)

Odp: Cyrki z kamerą Microsoft HD-3000

Z tego co się orientuję z tego forum to podobno USB na HG553 tak ma, że czasami działa a czasami nie. Ale zastanawiam się czy to przypadkiem nie wynika z wydajności prądowej portów czy magistrali USB. Znalazłem wątek: TL-MR3220 v2 i próba podlączenia usb WebCam gdzie użytkownik Alter Ego próbował podłączać identyczną kamerę z podobnym skutkiem - nie widać urządzenia w /dev. Napisał iż zmiana oryginalnego zasilacza 9V 0.85A na 12V 1.5A nie rozwiązała problemu. Zaraz potem pepe2k napisał coś takiego:

pepe2k napisał/a:

Nie jestem pewien, ale wydaje mi się, że i w tym modelu zasilanie na USB jest przez dodatkowy scalak, dzięki czemu można je programowo wyłączyć. A wydajność tego układu nie zwiększysz podłączając lepszy zasilacz...

i takiego:

pepe2k napisał/a:

... wydajność prądowa i jakość zasilacza może być nieskończona, a i tak to nic nie zmieni jeżeli wewnątrz urządzenia zastosowany jest jakiś stabilizator z ograniczeniem nadprądowym (lub inaczej: nie da więcej niż xxx mA) dla zasilania USB, a tak jest w opisywanym w wątku modelu.

Pisałem też już wielokrotnie, ale przypomnę - jeżeli jakieś urządzenie USB 2.0 potrzebuje/żre po wynegocjowaniu z hostem połączenia więcej niż 500 mA, to to urządzenie nie spełnia standardu, a nie zasilacz hosta, który ma ograniczenie nadprądowe lub inne zabezpieczenie, chroniące przed nadmiernym obciążeniem - pretensje do producentów tych urządzeń lub stosować zewnętrzne zasilanie dla takich urządzeń. Koniec i kropka.

Do pepe2k: Czy mógłbyś rzucić okiem na PCB HG553 i napisać czy w moim przypadku wymiana zasilacza na lepszy coś da. Oto zdjęcie:
http://savepic.net/8428608.jpg
Z aktywnymi HUB'ami USB i zasilaczami mam pewne doświadczenia - kupiłem kiedyś taki jeden HUB aktywny bo dysk przenośny USB 2.0 mi 'cykał' jak podłączałem do komputera ale okazało się iż nic a nic nie pomógł mimo iż miał wiele różnych możliwości podłączenia dodatkowego zasilania: zewnętrzny zasilacz 5V albo 5V z kabla zasilania napędu dyskietek. Zmieniałem także zasilacz ATX w komputerze i też nic to nie dało.

Ten sam dysk przenośny USB 2.0 bez problemu działa na jednym kablu USB w innym komputerze - laptopie i jeszcze nigdy mi nie 'cyknął' jak ja to nazywam. Wynika z tego iż w przypadku niektórych urządzeń nie pomoże ani zmiana zasilania urządzenia ani aktywny HUB USB.

Odnośnie kamery MS HD-3000 - czy to oznacza iż ona żre za dużo? Działa bez problemu na tym samym laptopie pod Windows co opisywany dysk przenośny USB 2.0.

Czyli co mam super laptopa z wydajnością USB ponad standard? Windows raportuje w Menedżerze urządzeń iż kamera bierze 500mA.

Oznajmiam iż problem z kamerą mam tylko czasami na HG553. Z tego co zauważyłem problem jest tylko przy włączaniu routera. Jak załapie dobrze to wszystko działa przez długi czas OK tzn. pendrive w jednym porcie a kamera w drugim, ale wystarczy wyłączyć router pstryczkiem z tyłu obudowy i przy ponownym włączeniu właśnie czasami USB nie załapuje tzn. nie rozpoznaje poprawnie urządzeń i zmienia szyny do jakich są podłączone - no i np. kamery nie ma w /dev a jest w lsusb.

Cezary gdzieś pisał na forum, iż te kamery USB to tylko zabawka i chyba miał rację. Jedyne - pewne rozwiązanie to urządzenia z własnym zasilaniem - wiem to z doświadczenia np. z kamerą samochodową Prestigio RoadRunner 505 nie miałem najmniejszych problemów ale ona ma właśnie własne zasilanie. Tak samo lepiej używać telefonu komórkowego z własnym zasilaniem jako modemu podłączonego przez USB zamiast modemu USB który bierze prąd z portu USB.

Edytowano
--------------
Znalazłem obejście problemu - trzeba włączać router z podłączonym tylko jednym urządzeniem USB np. pendrive'em a kamerę podłączać dopiero gdy OpenWrt wystartuje na full smile