Raspberry Pi ma port Micro USB do zasilania. Moje pytanie brzmi, czy ten port służy wyłącznie do zasilania, czy może służyć również do przesyłania danych? Chciałbym móc podłączyć Raspberry Pi jako urządzenie peryferyjne USB do innego komputera. Czy jest to możliwe przez port zasilania? Jeśli nie, czy można to zrobić w inny sposób?
44
Odpowiedzi:
Spojrzałem na schemat ; styki danych dla połączenia micro USB nie są do niczego podłączone. Dlatego nie ma sposobu na zamontowanie RPi jako urządzenia zewnętrznego.
Możliwe jest zamontowanie dysku twardego RPi lub zalogowanie się przez sieć za pomocą SSH.
Piny GPIO zawierają zestaw linii danych UART, które można wykorzystać do utworzenia połączenia szeregowego z RPi z komputera.
Bit-bit USB
Wykonano bit-banging USB ( AVR V-USB ), jednak trzeba by zaprojektować własną kartę rozszerzeń, która dodała kolejny port USB. Można sobie wyobrazić, że ten port może zasilać RPi. Po wykonaniu tej czynności musisz napisać jakiś sterownik. Powodzenia.
Jeśli jesteś gotów podjąć się tych wszystkich problemów, warto zamiast tego spojrzeć na układ FTDI . Podłączysz to do pinów UART RPi. Z perspektywy oprogramowania komunikowałbyś się z komputerem tak, jakby to było urządzenie szeregowe.
źródło
Ponieważ piny danych portu micro USB nie są podłączone do PHY USB SoC, nie można używać tego portu do przesyłania danych (w trybie hosta lub podrzędnym).
Powinno być jednak możliwe użycie portu USB typu A w modelu A w trybie podrzędnym.
Kilka dalszych szczegółów;
Model B wykorzystuje koncentrator SMSC LAN9512 USB 2.0 i kontroler Ethernet 10/100 Ethernet w celu zapewnienia wielu fizycznych portów hosta USB z jednego portu USB OTG dostępnego w Broadcom SoC. (Zobacz schemat tutaj: http://www.raspberrypi.org/wp-content/uploads/2012/04/Raspberry-Pi-Schematics-R1.0.pdf )
Obecność tego układu koncentratora uniemożliwia korzystanie z portów USB w trybie podrzędnym. Ponieważ jednak model A nie ma tego układu scalonego, a zamiast tego ma tylko jeden port USB podłączony bezpośrednio do portu OTG SoC, powinno być możliwe skonfigurowanie go do działania w trybie slave za pomocą oprogramowania.
Ponieważ model A ma żeński port USB hosta, potrzebny będzie kabel przejściowy HOST na HOST.
Aby uzyskać więcej informacji, zobacz ten wątek na forum Raspberry Pi: http://www.raspberrypi.org/phpBB3/viewtopic.php?f=63&t=15696
źródło
Model A będzie mógł używać standardowego interfejsu gadżetów, ponieważ USB na PI to OTG, a następnie można po prostu zmusić go do przejścia w tryb urządzenia.
Ale to oznacza, że tracisz Ethernet i inne USB
źródło
Modele Rasberry PI A / A + / B / B + mają wyłączony tryb OTG z różnych powodów:
Będziesz potrzebował Raspberry PI Zero dla OTG lub tak zwanego trybu gadżetów. Port danych USB może być używany do OTG i „zasilania”. W chwili pisania tego tekstu przetestowano interfejs szeregowy i Ethernet, ale inne powinny działać z odpowiednią ilością wysiłku (klawiatura, dysk, kamera itp.) Urządzenia kompozytowe również powinny działać. Zobacz więcej informacji na
Oczekuje się, że praca zostanie połączona z wersją jądra rpy-4.4, aby funkcjonalność OTG była dostępna OOTB dla łatwiejszego hakowania.
Większość podnoszenia ciężarów została przeprowadzona w Github raspberrypi / linux Issue # 1212 .
źródło
Niestety porty zasilające zwykle nie działają w ten sposób, więc nie można użyć portu micro USB do celów innych niż zasilanie.
Nie mogę obecnie wymyślić sposobu, w jaki można używać Pi jako urządzenia peryferyjnego, jednak istnieje kilka innych sposobów dostępu do Pi, w tym SSH, FTP lub samba.
Jeśli zastanawiasz się, co chcesz osiągnąć, możemy doradzić najlepszą metodę.
źródło
Tak, możesz użyć Modelu A jako urządzenia podrzędnego USB:
http://www.raspberrypi.org/forums/viewtopic.php?f=98&t=74098
Chociaż jest to dość ograniczone tylko do użycia jako urządzenia pamięci masowej (karty SD) - brak dostępu do GPIO, wyświetlania, a nawet użycia procesora ARM.
źródło
Tak, możesz, jeśli używasz kontrolera peryferyjnego USB z interfejsem SPI, takiego jak MAX3420E, i napisz do niego sterownik, jeśli nie jest jeszcze obsługiwany w systemie Linux i obsługuj określoną klasę USB, którą chcesz zaimplementować.
źródło
Od czasu zadania pytania wykonano wiele pracy. Możliwe jest teraz używanie niektórych modeli Rasberry Pi jako urządzenia peryferyjnego USB (np. Pamięć masowa, port szeregowy, Ethernet, klawiatura, mysz). Zobacz tę treść i przewodnik .
źródło
Czy Pi może emulować urządzenie HID za pomocą USB?
Można tego dokonać DOWOLNYM rodzajem Pi
Najtańszym rozwiązaniem jest użycie Pi Zero.
Tekst tego linku jest zbyt długi, aby opublikować tutaj, ale Zero może być dowolnym rodzajem HID. Klawiatura, mysz, pamięć flash, aparat, cokolwiek wymyślisz.
Zmieniając Raspberry PI Zero w gadżet USB
Stworzenie klawiatury lub myszy jest łatwe.
źródło
Możesz wykonać proste połączenie sieciowe z komputera do Raspberry Pi i użyć Pulse Audio do przesyłania dźwięku przez sieć. Pulse Audio to serwer dźwięku, który oferuje przezroczystość sieci. Możesz więc odtwarzać pliki dźwiękowe na komputerze i słyszeć je za pomocą głośników podłączonych do Raspberry Pi.
źródło