ResearchGate-logo

Jednodeskový počítač ResearchGate Raspberry Pi

Produkt ResearchGate-Raspberry-Pi-Single-Board-Computer

Informace o produktu

Specifikace

  • Výrobce: Raspberry Pi Ltd
  • Datum sestavení: 01. 10. 2025
  • Verze sestavení: 99a8b0292e31
  • Podporované produkty Raspberry Pi: Pi Zero, Pi Zero 2 W, Pi 1 AB, Pi 2, Pi 3, Pi 4, Pi 5, výpočetní moduly CM1, CM3, CM4, CM5

Tiráž
© 2022–2025 Raspberry Pi Ltd

Tato dokumentace je licencována pod Creative Commons Uveďte autora-Bez odvozených zdrojů 4.0 Mezinárodní (CC BY-ND).

Uvolnění 1
Datum výstavby 01. 10. 2025
Sestavte verzi 99a8b0292e31

Právní upozornění
TECHNICKÉ A SPOLEHLIVÉ ÚDAJE PRO PRODUKTY RASPBERRY PI (VČETNĚ DATOVÝCH LISTŮ) VE ZMĚNĚ, KTERÉ BÝVAJÍ ČAS OD ČASU („ZDROJE“) POSKYTUJE SPOLEČNOST RASPBERRY PI LTD („RPL“) „TAK, JAK JSOU“ A VEŠKERÉ VÝSLOVNÉ NEBO PŘEDPOKLÁDANÉ ZÁRUKY, VČETNĚ, ALE NEJEN, PŘEDPOKLÁDANÝCH ZÁRUK OBCHODOVATELNOSTI A VHODNOSTI PRO URČITÝ ÚČEL, JSOU VYLOUČENY. V MAXIMÁLNÍM ROZSAHU POVOLENÉM PLATNÝMI ZÁKONY NEBUDE RPL V ŽÁDNÉM PŘÍPADĚ ODPOVĚDNÁ ZA ŽÁDNÉ PŘÍMÉ, NEPŘÍMÉ, NÁHODNÉ, ZVLÁŠTNÍ, EXEMPLÁRNÍ NEBO NÁSLEDNÉ ŠKODY (VČETNĚ, ALE NEJEN, ZÍSKÁNÍ NÁHRADNÍHO ZBOŽÍ NEBO SLUŽEB; ZTRÁTY MOŽNOSTI POUŽITÍ, DAT NEBO ZISKŮ; NEBO PŘERUŠENÍ PODNIKÁNÍ), JAKKOLIV BYLY ZPŮSOBENY, A NA ZÁKLADĚ JAKÉKOLI TEORIE ODPOVĚDNOSTI, AŤ UŽ VE SMLOUVĚ, Z OBSAHOVÉ ODPOVĚDNOSTI NEBO OBČANSKÉHO PŘESTUPKU (VČETNĚ NEDBALOSTI NEBO JINAK), KTERÉ JAKÝMKOLIV ZPŮSOBEM VZNIKLY Z POUŽÍVÁNÍ ZDROJŮ, ATO I V PŘÍPADĚ, ŽE BYLA NA MOŽNOST TAKOVÉ ŠKODY UPOZORNĚNA.

Společnost RPL si vyhrazuje právo kdykoli a bez dalšího upozornění provádět jakákoli vylepšení, vylepšení, opravy nebo jakékoli jiné úpravy ZDROJŮ nebo jakýchkoli produktů v nich popsaných.
ZDROJE jsou určeny pro zkušené uživatele s odpovídající úrovní znalostí návrhu. Uživatelé jsou výhradně zodpovědní za svůj výběr a použití ZDROJŮ a jakékoli použití produktů v nich popsaných. Uživatel souhlasí s tím, že odškodní a ochrání RPL vůči veškerým závazkům, nákladům, škodám nebo jiným ztrátám vyplývajícím z používání ZDROJŮ.
RPL uděluje uživatelům oprávnění používat ZDROJE výhradně ve spojení s produkty Raspberry Pi. Jakékoli jiné použití ZDROJŮ je zakázáno. Žádná licence není udělena žádnému jinému RPL nebo jinému právu duševního vlastnictví třetí strany.

VYSOKÉ RIZIKOVÉ AKTIVITY. Produkty Raspberry Pi nejsou navrženy, vyrobeny ani zamýšleny pro použití v nebezpečných prostředích vyžadujících bezpečnost při selhání, jako je provoz jaderných zařízení, letecké navigační nebo komunikační systémy, řízení letového provozu, zbraňové systémy nebo aplikace kritické z hlediska bezpečnosti (včetně podpory života systémů a jiných zdravotnických prostředků), ve kterých by selhání produktů mohlo vést přímo k smrti, zranění osob nebo vážnému fyzickému poškození nebo poškození životního prostředí („Vysoce rizikové činnosti“). RPL výslovně odmítá jakoukoli výslovnou nebo předpokládanou záruku vhodnosti pro vysoce rizikové činnosti a nepřijímá žádnou odpovědnost za použití nebo zahrnutí produktů Raspberry Pi do vysoce rizikových činností.
Produkty Raspberry Pi jsou poskytovány v souladu se standardními podmínkami RPL. Poskytování ZDROJŮ společností RPL nerozšiřuje ani jinak neupravuje Standardní podmínky společnosti RPL, včetně, nikoli však výhradně, vyloučení odpovědnosti a záruk v nich vyjádřených.

Historie verzí dokumentu

Uvolnění Datum Popis
1 1. října 2025 Počáteční vydání

Rozsah dokumentu
Tento dokument se vztahuje na následující produkty Raspberry Pi:

Jednodeskové počítače / SBC

Pí nula Pí nula 2 pí 1 pí 2 pí 3 pí 4 pí 5

Výpočetní moduly

CM1 CM3 CM4 CM5

Zavedení

USB On-The-Go (OTG) je specifikace, která umožňuje zařízení fungovat buď jako USB host (jako počítač), nebo jako USB zařízení/periferie (jako klávesnice, ethernetový adaptér nebo velkokapacitní paměťové zařízení). Stránka „USB On-The-Go“ na Wikipedii poskytuje mnoho podrobností o specifikaci OTG: https://en.wikipedia.org/wiki/USB_On-The-Go.
USB připojení obvykle zahrnuje pevného hostitele (např. počítač) a periferní zařízení (např. myš). USB OTG umožňuje zařízení přepínat mezi těmito dvěma. Napříkladampnapříklad Raspberry Pi by mohl při čtení fungovat jako hostitel filez flash disku nebo fungují jako samotný flash disk po připojení k počítači.

Rodina Raspberry Pi zahrnuje několik desek, které mohou fungovat v OTG/periferním režimu, ale podpora se liší v závislosti na modelu a systému na čipu (SoC). V tomto periferním režimu se zařízení často označuje jako „gadget“.
Tato dokumentace probírá řadu SBC pro Raspberry Pi, vysvětluje jejich OTG možnosti a poskytuje konfigurační/kódové příklady.amples. Zahrnuje dva odlišné mechanismy OTG: starší metodu, která je stále velmi populární a je popsána jako první, a následovanou aktuálně doporučeným schématem ConfigFS.

Starší OTG

Raspberry Pi Zero / Zero W / Zero 2 W
Tyto desky jsou v rodině Raspberry Pi nejvíce kompatibilní s OTG. USB řadič SoC mají přímo připojený k datovému USB portu (ten označený jako USB, nikoli PWR IN) a integrovaný software lze nakonfigurovat tak, aby váš Raspberry Pi fungoval jako OTG zařízení.

Povolení režimu OTG

Tip: Protože pro účely OTG používáte jediný USB port na Raspberry Pi Zero, nebudete moci připojit klávesnici ani myš. Místo toho můžete pro komunikaci s Raspberry Pi Zero použít Wi-Fi připojení a SSH…

dtoverlay=dwc2

Nyní musíme nakonfigurovat software pro připojení požadovaného ovladače OTG k systému USB…

console=serial0,115200 console=tty1 root=PARTUUID=xxxxxxxx-02 rootfstype=ext4 fsck.repair=yes rootwait modules-load=dwc2,g_ether

Další moduly gadgetů
Místo g_ether, můžete zkusit:

  • g_serial: Zobrazuje se jako sériové zařízení USB
  • g_mass_storage: Zpřístupní obraz file jako flash disk
  • g_compositeEmuluje kompozitní zařízení

Tip
Kompozitní USB zařízení je jedno fyzické zařízení, které funguje jako více nezávislých zařízení pro počítač a jeví se jako několik samostatných rozhraní nebo tříd zařízení. Kombinuje různé funkce, například klávesnici a myš nebo úložnou jednotku a... webkamera, do jednoho USB zařízení a konektoru. Po připojení operační systém rozpozná a použije samostatné ovladače pro každou z funkcí zařízení, což jim umožňuje fungovat nezávisle.

Pro vytvoření sériového USB modulu můžeme načíst příslušný modul z příkazového řádku:

  • Kód
  • sudo modprobe g_serial

Po připojení k počítači s Windows se Raspberry Pi ve Správci zařízení zobrazí jako COM port; po připojení k zařízení s Linuxem (např. Raspberry Pi SBC) se zobrazí jako sériové zařízení, například /dev/ttyACM0.

Raspberry Pi 4 a 5 (OTG na napájecím portu USB-C)
Napájecí/OTG port USB-C na Raspberry Pi 4 podporuje periferní režim, pokud se nepoužívá k napájení desky.
Raspberry Pi 5 představuje USB řadič připojený přes PCIe, který nepodporuje OTG. Stejně jako u Raspberry Pi 4 je však nativní periferní funkce OTG na SoC dostupná prostřednictvím napájecího konektoru.

Kroky
Napájejte Raspberry Pi přes GPIO konektor (5V a GND) a nechte USB-C volný.
Připojte port USB-C k hostitelskému počítači.

Povolte OTG v souboru /boot/firmware/config.txt 

Kód
dtoverlay=dwc2,dr_mode=periferní

Poznámka
Pro vynucení přepnutí ovladače do periferního režimu OTG (nikoli hostitelského), potřebujete na překryvné vrstvě volbu dr_mode=peripheral, protože linka OTG_ID, která by normálně prováděla výběr, na Raspberry Pi 4 nebo 5 chybí.

Načtěte modul miniaplikace (Ethernet):
Kód
sudo modprobe g_ether
Váš Raspberry Pi se nyní hostiteli zobrazí jako USB zařízení.

Tip
Ne všechny hostitelské systémy spolehlivě zvládají režim OTG Raspberry Pi 4. Ethernet a sériové rozhraní fungují nejlépe.

Řada výpočetních modulů Raspberry Pi
Výpočetní moduly Raspberry Pi 1, 3, 3+ a 4 odkrývají USB OTG řadič SoC přímo na nosné desce, což je činí vysoce flexibilními.
CM1/CM3/CM3+ Rozhraní USB OTG je k dispozici na vyhrazených pinech; nosné desky jej často zpřístupňují přes port micro-USB. CM4 Nabízí rozhraní USB 2.0 (USB_OTG) s podporou OTG. To je směrováno do konektoru micro-USB na desce IO Board výpočetního modulu 4.

CM4 OTG example (ethernetový gadget)
Zapojte kabel micro-USB do portu USB na vstupně-výstupní desce.

Do souboru /boot/firmware/config.txt přidejte:

Kód
dtoverlay=dwc2,dr_mode=periferní

Do souboru /boot/cmdline.txt přidejte:

  • Kód
  • moduly-load=dwc2,g_ether

Restartujte. Výpočetní modul 4 se nyní zobrazí jako ethernetový adaptér USB.

Raspberry Pi A, B, B+, 2B, 3B, 3B+
USB porty u těchto modelů jsou připojeny přes rozbočovač (LAN9512/LAN9514 nebo VIA Labs), který odebírá možnosti OTG. Mohou fungovat pouze jako USB hostitelé, takže podpora OTG není k dispozici.

Používání různých typů zařízení
Tato část popisuje, jak nastavit nejběžnější režimy miniaplikací.

Velkokapacitní paměťová zařízení
Abyste mohli Raspberry Pi používat jako velkokapacitní paměťové zařízení (jako je USB flash disk), budete si muset vytvořit záložní kopii. file pro uchování uložených dat:

  • Kód
    • # Přample: Vytvořte 256 MB file fungovat jako „USB flash disk“
    • sudo dd if=/dev/zero of=drive.bin bs=1M počet=256
    • # Vytvořte VFAT file systém na podkladovém úložišti
    • sudo mkfs.vfat disk.bin
  • Upravte soubor /etc/modprobe.d/g_mass_storage.conf tak, aby systém používal záložní úložiště:
    • Kód
    • možnosti g_mass_storage file=/drive.bin stall=0 vyjímatelný=1
    • Obsah záložního úložiště si můžete prohlédnout jeho připojením k Raspberry Pi. Zde jej připojíme do složky s názvem mountpoint:
  • Kód
    • přípojný bod sudo mkdir
    • sudo mount -o loop drive.bin přípojný bod

Budete muset cesty upravit dle potřeby.

Ethernetová zařízení
Když je zařízení g_ether připojeno k hostiteli s Linuxem, obvykle se zobrazí jako síťové rozhraní s názvem usb0 (při použití příkazu ifconfig).
K zařízení se (obvykle) můžete připojit pomocí SSH takto:

  • Kód
  • ssh pi@rasberrypi.local

Sériová zařízení

Když je Raspberry Pi nastaveno jako zařízení g_serial, objeví se nové sériové zařízení (při použití Raspberry Pi OS Bookworm s jádrem 6.12.34 to bylo /dev/ttyGS0). Po připojení tohoto zařízení Raspberry Pi k (napříkladamp(Linux), zařízení bude rozpoznáno jako zařízení kompatibilní s CDC ACM a zobrazí se jako další sériový port. NapříkladampNa Raspberry Pi 500 s operačním systémem Bookworm se zobrazuje jako /dev/ttyACM0.
V Linuxu můžete sériové připojení otestovat pomocí obrazovky na každém zařízení. Pokud na hostiteli používáte Windows, měl by fungovat dobře program jako Putty.

Na vašem Raspberry Pi:

  • Kód
  • obrazovka /dev/ttyGS0

Na hostiteli s Linuxem:

  • Kód
  • obrazovka /dev/ttyACM0

Pak do každého okna něco napište – výstup by se měl objevit na druhé obrazovce.

Poznámka
Pokud není screen nainstalován, použijte v terminálovém okně příkaz sudo apt install screen.
Je snadné si představit, jak by se tato funkce dala využít k poskytnutí sériového rozhraní pro zařízení Raspberry Pi, které monitoruje řadu senzorů (např. přes I2C nebo SPI) a předává shromážděné informace zpět přes sériový port do hostitelského počítače.

ConfigFS/usb_gadget: statečný nový svět

Přestože jsou zdaleka nejběžnějším způsobem nastavení OTG na zařízeních Raspberry Pi, výše popsané mechanismy byly ve skutečnosti nahrazeny něčím s názvem usb_gadget, který je součástí ConfigFS.
ConfigFS je rozhraní linuxového jádra (virtuální file systém připojený k /sys/kernel/config) používaný ke konfiguraci objektů jádra – včetně ovladačů USB gadgetů – modulárním způsobem. Použití ConfigFS /usb_gadget je flexibilnější než stará metoda g_mass_storage /g_ether, protože můžete najednou sestavit více USB funkcí (např. Ethernet + sériový port + velkokapacitní úložiště).
Tato dodatečná funkce však s sebou nese vyšší náklady na instalaci.
Základní myšlenkou je, že sada virtuálních složek a fileSoubor s se vytvoří ve složce /sys/kernel/config, která definuje požadovaný gadget.
Některá dokumentace jádra k usb_gadgets je k dispozici zde: https://docs.kernel.org/driver-api/usb/gadget.html a https://www.kernel.org/doc/Documentation/ABI/testing/configfs-usb-gadget.

Nastavení
Nastavení periferního zařízení DWC USB je stejné jako v režimu Legacy. Upravte soubor config.txt jako sudo a přidejte:

Jednodeskový počítač ResearchGate Raspberry Pi (1)

Zda se správně načetl, můžeme ověřit pohledem na obsah souboru /sys/kernel/config, který by nyní měl obsahovat složku s názvem usb_gadget.
Dalším krokem je vytvoření samotného USB zařízení, které zahrnuje vytvoření složky s názvem zařízení a následné vytvoření sady položek v této složce pro definování vlastností zařízení. Většinu potřebného nastavení provede tento úryvek bash skriptu:

Jednodeskový počítač ResearchGate Raspberry Pi (2) Jednodeskový počítač ResearchGate Raspberry Pi (3)

Nyní, když jsou nastavena základní data zařízení, musíme zařízení přesně sdělit, o co se jedná. Vytvoření každého zařízení je stejně jednoduché jako vytvoření složky ve složce funkcí miniaplikace ConfigFS a následné propojení této složky s konfigurační položkou v téže miniaplikaci.

Sériové číslo (CDC ACM):

Jednodeskový počítač ResearchGate Raspberry Pi (4)

Ethernet (RNDIS a ECM):

Jednodeskový počítač ResearchGate Raspberry Pi (5) Velké úložiště:
Stejně jako u staršího systému potřebujeme záložní úložiště pro náš velkokapacitní úložný modul:

Jednodeskový počítač ResearchGate Raspberry Pi (6)

A jak toho využít:

Jednodeskový počítač ResearchGate Raspberry Pi (7)

Tip
/sys/class/udc je adresář v rámci sysfs. file systém, který reprezentuje dostupné řadiče USB zařízení (UDC). Umožňuje subsystému USB gadgetů jádra identifikovat a interagovat s hardwarovými UDC na zařízení, což systému umožňuje fungovat jako USB periférie. Jeho obsah můžete vypsat pomocí příkazu ls /sys/class/udc/ k nalezení názvu UDC, například 3f980000.usb, a poté tento název zapsat do konfigurace gadgetu, abyste gadget svázali s UDC.

Po dokončení instalace by struktura a obsah složek měly odpovídat předchozímuampníže uvedený soubor, který nastavuje sériový i ethernetový modul na stejném zařízení:

Jednodeskový počítač ResearchGate Raspberry Pi (8)

Nyní restartujte počítač a připojte Raspberry Pi k hostitelskému zařízení (např. k jinému Raspberry Pi, počítači se systémem Windows nebo Linux). Hostitelské zařízení by mělo mít připojené ethernetové zařízení USB a sériové zařízení.

Aby to všechno fungovalo
Všechny výše popsané příkazy je třeba spustit při každém spuštění zařízení Raspberry Pi. Protože operační systém Raspberry Pi používá systemd, je to vhodný způsob spuštění spouštěcího skriptu, který provádí veškeré nastavení. Zde je příkladampskript, který shromažďuje všechny výše uvedené instrukce:

Jednodeskový počítač ResearchGate Raspberry Pi (9) Jednodeskový počítač ResearchGate Raspberry Pi (10)

Nyní musíme říct systemd, aby spustil náš skript při startu.
Vytvořte a file v /lib/systemd/system — název, který si zvolíte, je na vás (pokud přípona bude .service), ale pro tento příkladampPoužijeme tedy službu mass-storage-device.service. Do pole zadejte následující file (Upozorňujeme, že pro tyto služby existuje mnoho různých možností) file(použili jsme jen ty, které potřebujeme):

Jednodeskový počítač ResearchGate Raspberry Pi (11)

Budete muset změnit řádek ExecStart tak, aby odkazoval na místo, kam jste uložili instalační skript. Poté musíte sdělit systemd, aby spustil službu při startu systému:

Jednodeskový počítač ResearchGate Raspberry Pi (12)

Po připojení Raspberry Pi k hostiteli by se měl zobrazit jako velkokapacitní paměťové zařízení. Službu systemd můžete zakázat takto:

Jednodeskový počítač ResearchGate Raspberry Pi (13)

Připojení přihlašovací konzole k sériovému portu

Pokud jste si Raspberry Pi nastavili jako sériový gadget, možná budete chtít tento sériový gadget použít k přihlášení k zařízení, spíše než ho používat pouze pro sériovou komunikaci typu point-to-point. V nejnovější verzi operačního systému Raspberry Pi se systémem systemd je to snadné. Musíte systému říct, aby na sériovém portu vytvořil getty, a poté systemd říct, aby jej spustil. Následující postup nastaví getty na ttyGS0 (tty vytvořený při použití ConfigFS k nastavení sériového zařízení); možná budete muset toto nastavení upravit tak, aby odpovídalo tomu, ke kterému tty je sériové zařízení přiřazeno.

Jednodeskový počítač ResearchGate Raspberry Pi (14)

Tím se spustí getty na sériovém portu a zajistí se jeho automatické spuštění při každém restartu.

Tip
Co je to getty? V Linuxu je getty program, který spravuje terminály (fyzické sériové porty i virtuální konzole) a umožňuje tak více uživatelům přihlásit se do systému. Zpracovává úkoly, jako je inicializace terminálu, zobrazení přihlašovacího řádku a spuštění přihlašovacího programu pro ověření uživatele.

Tato funkce může být obzvláště užitečná u zařízení jako Raspberry Pi Zero nebo Raspberry Pi Zero 2 W. Díky jedinému USB portu, který zajišťuje napájení i sériovou komunikaci, můžete zařízení připojit a přihlásit se k němu pomocí terminálu.

Závěr
Pro skutečné projekty s USB zařízeními (např. Ethernet, sériové rozhraní, velkokapacitní úložiště) je nejlepší volbou řada Raspberry Pi Zero a výpočetní moduly Raspberry Pi.
Raspberry Pi 4 a Raspberry Pi 5 sice podporují OTG, ale jejich požadavky na napájení mohou být problém.
Desky Raspberry Pi A, B, 2B, 3B a 3B+ nepodporují OTG.
Pokud váš projekt silně závisí na OTG, nejlepšími možnostmi jsou Raspberry Pi Zero 2 W nebo Raspberry Pi Compute Module 4 s deskou Compute Module 4 IO Board.
Na straně softwaru existují dvě možnosti: starší systém se stále běžně používá a snadno se nastavuje; systém ConfigFS vyžaduje více práce k nastavení, ale poskytuje lepší funkčnost.

Rychlá referenční tabulka

Model Podpora OTG Poznámky
Raspberry Pi Zero / Zero W / Zero 2 W Ano Plně podporováno na datovém portu USB
Raspberry Pi 4 Ano ¹ Port USB-C v režimu zařízení
Raspberry Pi 5 Ano ¹ Port USB-C v režimu zařízení
Raspberry Pi A/B/2B/3B/3B+ Žádný Pouze režim hostitele
Výpočetní modul Raspberry Pi 1–3 Ano Odkryté na OTG pinech
Výpočetní modul Raspberry Pi 4 Ano micro-USB na desce CM4 IO

¹ Raspberry Pi 4 a 5 obvykle odebírají energii z hostitelského počítače přes USB kabel, takže vzhledem k vyšším požadavkům na napájení těchto zařízení mohou existovat omezení dostupného proudu.

Kontaktní údaje pro více informací
Kontaktujte prosím application@raspberrypi.com Pokud máte jakékoli dotazy k tomuto dokumentu. Web: www.raspberrypi.com

Často kladené otázky

Jaká jsou rizika spojená s aktivací režimu OTG?

Povolení režimu OTG vyžaduje editační systém filekteré mohou při nesprávném provedení představovat riziko. Doporučuje se pečlivě dodržovat pokyny a před provedením změn zálohovat důležitá data.

Mohu používat režim OTG na jiných modelech Raspberry Pi než Zero, Zero W a Zero 2 W?

I když jsou uvedené pokyny specifické pro zmíněné modely, můžete si s příslušnými úpravami prohlédnout podobné konfigurace na jiných SBC Raspberry Pi.

Dokumenty / zdroje

Jednodeskový počítač ResearchGate Raspberry Pi [pdfNávod k obsluze
Jednodeskový počítač Raspberry Pi, Raspberry Pi, Jednodeskový počítač, Deskový počítač, Počítač

Reference

Zanechte komentář

Vaše emailová adresa nebude zveřejněna. Povinná pole jsou označena *