ResearchGate Raspberry Pi Unuplata Komputilo

Produktaj Informoj
Specifoj
- Produktanto: Raspberry Pi Ltd
- Konstrudato: 01/10/2025
- Konstruversio: 99a8b0292e31
- Subtenataj Raspberry Pi-produktoj: Pi Zero, Pi Zero 2 W, Pi 1 AB, Pi 2, Pi 3, Pi 4, Pi 5, Komputaj Moduloj CM1, CM3, CM4, CM5
Kolofono
© 2022-2025 Raspberry Pi Ltd
Ĉi tiu dokumentaro estas licencita sub Krea Komunaĵo Atribuite-SenModifitaj 4.0 Internacia (CC BY-ND).
| Liberigu | 1 |
|---|---|
| Konstrua dato | 01/10/2025 |
| Konstrua versio | 99a8b0292e31 |
Leĝa Malgarantio Avizo
TEKNIKAJ KAJ FIDINDECAJ DATUMOJ POR RASPBERRY PI-PRODUKTOJ (INKLUZIVE DE DATENFOLIOJ) KIEL MODIFITAJ DE TEMPO AL TEMPO (“RESURSOJ”) ESTAS PROVIZATAJ DE RASPBERRY PI LTD (“RPL”) “KIAJ ESTAS” KAJ ĈIUJ EKSPLICAJ AŬ IMPLICAJ GARANTIOJ, INKLUZIVE DE, SED NE LIMIGITE AL, LA IMPLICAJ GARANTIOJ DE KOMERCEBLECO KAJ TAŬGECO POR SPECIFA CELO ESTAS MALAKCEPTATAJ. LAŬ LA MAKSIMUMA GRADO PERMESITA DE APLIKEBLA JURO, EN NENIA KAZO RPL RESPONDAS PRI AJNAJ REKTAJ, NEREKTAJ, KROMDAŬRAJ, SPECIALAJ, EKZEMPLAJ AŬ KONSEKVENCAJ DIFEKTOJ (INKLUZIVE DE, SED NE LIMIGITE AL, AKIRO DE ANSTATAŬAJ VAROJ AŬ SERVOJ; PERDO DE UZO, DATUMOJ AŬ PROFITOJ; AŬ INTERROMPO DE KOMERCO) KIEL AJN KAŬZITAJ KAJ LAŬ AJN TEORIO DE RESPONSECO, ĈU KONTRAKTE, STRIKTE, AŬ DELIKTO (INKLUZIVE DE NEGLIGO AŬ ALIE) EKZULTANTAJ IE AJN EL LA UZO DE LA RIMEDOJ, EĈ SE AVERTITE PRI LA EBLECO DE TIA DIFEKTO.
RPL rezervas la rajton fari ajnajn plibonigojn, plibonigojn, korektojn aŭ ajnajn aliajn modifojn al la RIMEDOJ aŭ ajnaj produktoj priskribitaj en ili en ajna momento kaj sen plia avizo.
La RESURSOJ estas destinitaj por spertaj uzantoj kun taŭgaj niveloj de kono pri dezajno. Uzantoj respondecas nur pri sia elekto kaj uzo de la RIMEDOJ kaj ajna apliko de la produktoj priskribitaj en ili. Uzanto konsentas kompensi kaj senkulpigi RPL kontraŭ ĉiuj kompensdevoj, kostoj, damaĝoj aŭ aliaj perdoj estiĝantaj pro ilia uzo de la RIMEDOJ.
RPL donas al uzantoj permeson uzi la RESURSOJN nur kune kun la produktoj Raspberry Pi. Ĉia alia uzo de la RESURSOJ estas malpermesita. Neniu permesilo estas koncedita al iu alia RPL aŭ alia triapartia intelekta proprieta rajto.
ALTA RISKAJ ACTIVADOJ. Raspberry Pi-produktoj ne estas desegnitaj, fabrikitaj aŭ destinitaj por uzo en danĝeraj medioj postulantaj malsukcesan sekuran agadon, kiel ekzemple en funkciado de nukleaj instalaĵoj, aviadilnavigacio aŭ komunikadsistemoj, aertrafika kontrolo, armilsistemoj aŭ sekurec-kritikaj aplikoj (inkluzive de vivsubteno). sistemoj kaj aliaj medicinaj aparatoj), en kiuj la malsukceso de la produktoj povus kaŭzi rekte morton, personan vundon aŭ severan fizikan aŭ median damaĝon ("Altaj Riskaj Agadoj"). RPL specife rifuzas ajnan eksplicitan aŭ implicitan garantion de taŭgeco por Altriskaj Aktivecoj kaj akceptas neniun respondecon por uzo aŭ inkludoj de Raspberry Pi-produktoj en Altriskaj Aktivecoj.
Raspberry Pi-produktoj estas provizitaj sub la Normaj Kondiĉoj de RPL. La dispozicio de RPL pri la RIMEDOJ ne vastigas aŭ alie modifas la Normajn Kondiĉojn de RPL inkluzive sed ne limigitaj al la malgarantioj kaj garantioj esprimitaj en ili.
Dokumenta Versio-Historio
| Liberigu | Dato | Priskribo |
|---|---|---|
| 1 | 1 okt 2025 | Komenca eldono |
Amplekso de Dokumento
Ĉi tiu dokumento validas por la sekvaj produktoj de Raspberry Pi:
Unu-plataj komputiloj / SBC-oj
| Pi Nulo | Pi Nulo 2 | Pi 1 | Pi 2 | Pi 3 | Pi 4 | Pi 5 |
|---|---|---|---|---|---|---|
| ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | – |
Komputilaj Moduloj
| CM1 | CM3 | CM4 | CM5 |
|---|---|---|---|
| ✓ | ✓ | ✓ | ✓ |
Enkonduko
USB On-The-Go (OTG) estas specifo kiu permesas al aparato funkcii aŭ kiel USB-gastiganto (kiel komputilo) aŭ kiel USB-aparato/flankaparato (kiel klavaro, Ethernet-adaptilo aŭ amasmemorilo). La vikipedia paĝo 'USB On-The-Go' provizas multajn detalojn pri la OTG-specifo: https://en.wikipedia.org/wiki/USB_On-The-Go.
Kutime, USB-konekto implikas fiksan gastiganton (ekz. komputilon) kaj flankaparaton (ekz. muson). USB OTG permesas al aparato ŝalti inter la du. Ekzempleample, Raspberry Pi povus funkcii kiel gastiganto dum legado files de poŝmemorilo, aŭ funkcii kiel poŝmemorilo mem kiam konektita al komputilo.
La familio Raspberry Pi inkluzivas plurajn platojn, kiuj povas funkcii en OTG/periferia reĝimo, sed subteno varias depende de la modelo kaj la sistemo sur ĉipo (SoC). Kiam ĝi funkcias en ĉi tiu periferia reĝimo, la aparato ofte estas nomata "aparato".
Ĉi tiu blanka libro trairas la Raspberry Pi SBC-vicigon, klarigas iliajn OTG-kapablojn, kaj provizas agordajn/kodajn ekzemplojn.amples. Ĝi kovras du apartajn OTG-mekanismojn: la heredaĵan metodon, kiu estas ankoraŭ tre populara kaj estas priskribita unue, sekvata de la nuntempe rekomendita skemo, ConfigFS.
Heredaĵa OTG
Frambo Pi Nulo / Nulo W / Nulo 2 W
Ĉi tiuj platoj estas la plej OTG-amikaj en la familio Raspberry Pi. Ili montras la USB-regilon de la SoC rekte sur la USB-datenpordo (tiu etikedita USB, ne PWR IN), kaj la enkonstruita programaro povas esti agordita por igi vian Raspberry Pi agi kiel OTG-aparato.
Ebligi OTG-reĝimon
Konsilo: Ĉar vi uzas la solan USB-pordon sur Raspberry Pi Zero por OTG-celoj, vi ne povos konekti klavaron aŭ muson. Vi povas anstataŭe uzi Wi-Fi-konekton kaj SSH por komuniki kun Raspberry Pi Zero…
dtoverlay=dwc2
Nun ni bezonas agordi la programaron por konekti la petitan OTG-pelilon al la USB-sistemo...
console=serial0,115200 console=tty1 root=PARTUUID=xxxxxxxx-02 rootfstype=ext4 fsck.repair=yes rootwait modules-load=dwc2,g_ether
Aliaj Moduloj de Noviletoj
Anstataŭ g_ether, vi povas provi:
g_serial: Aperas kiel USB-seria aparatog_mass_storage: Malkovras bildon file kiel poŝmemorilog_composite: Imitas kompozitan aparaton
Konsileto
USB-kompozita aparato estas ununura fizika aparato, kiu funkcias kiel pluraj sendependaj aparatoj por komputilo, aperante kiel pluraj apartaj interfacoj aŭ aparatklasoj. Ĝi kombinas malsamajn funkciojn, kiel ekzemple klavaron kaj muson, aŭ memorilon kaj... webfotilo, en unuopan USB-aparaton kaj konektilon. Kiam konektita, la operaciumo rekonas kaj uzas apartajn pelilojn por ĉiu el la apartaj funkcioj de la aparato, permesante al ili funkcii sendepende.
Por krei serian USB-konektilon, ni povas ŝargi la taŭgan modulon el la komandlinio:
- Kodo
- sudo modprobe g_seria
Kiam konektita al Vindoza komputilo, la Raspberry Pi aperos kiel COM-pordo en la Aparatadministrilo; kiam konektita al Linuksa aparato (ekz. Raspberry Pi SBC), ĝi aperos kiel seria aparato kiel /dev/ttyACM0.
Raspberry Pi 4 kaj 5 (OTG ĉe la USB-C-potenca pordo)
La USB-C-konektilo/OTG de Raspberry Pi 4 subtenas flankaparatan reĝimon kiam ĝi ne estas uzata por funkciigi la platon.
Raspberry Pi 5 enkondukas PCIe-konektitan USB-regilon, kiu ne subtenas OTG. Tamen, kiel ĉe Raspberry Pi 4, la denaska OTG-flankaparata funkcio sur la SoC estas videbla per la potenca konektilo.
Paŝoj
Nutru vian Raspberry Pi tra la GPIO-konektilo (5V kaj GND), lasante la USB-C libera.
Konekti la USB-C-pordon al via gastiga komputilo.
Ebligi OTG en /boot/firmware/config.txt
Kodo
dtoverlay=dwc2,dr_reĝimo=periferia
Notu
Vi bezonas la opcion dr_mode=peripheral sur la paĝdosiero por devigi la regilon en OTG-flankaparatan (anstataŭ gastigan) reĝimon, ĉar la OTG_ID-linio, kiu normale farus la elekton, ne ĉeestas sur Raspberry Pi 4 aŭ 5.)
Ŝarĝi modulon de novileto (Eterreto):
Kodo
sudo modprobe kun_etero
Via Raspberry Pi nun listigos sin kiel USB-aparato al la gastiganto.
Konsileto
Ne ĉiuj gastigaj sistemoj fidinde pritraktas la OTG-reĝimon de Raspberry Pi 4. Eterreto kaj seria konektoj funkcias plej bone.
Raspberry Pi Komputa Modula serio
Raspberry Pi Compute Module 1, 3, 3+ kaj 4 eksponas la USB OTG-regilon de la SoC rekte al la portanto-plato, igante ilin tre flekseblaj.
CM1/CM3/CM3+ La USB OTG-interfaco estas havebla sur dediĉitaj konektiloj; portakartoj ofte elmontras ĉi tion per mikro-USB-pordo. CM4 Proponas OTG-kapablan USB 2.0-interfacon (USB_OTG). Ĉi tio estas direktita al la mikro-USB-konektilo de la Compute Module 4 IO-karto.
CM4 OTG eksample (Eterreta aparato)
Enŝovu mikro-USB-kablon en la USB-pordon sur la IO-tabulo.
En /boot/firmware/config.txt, aldonu:
Kodo
dtoverlay=dwc2,dr_reĝimo=periferia
En /boot/cmdline.txt, aldonu:
- Kodo
- moduloj-ŝarĝo=dwc2,g_etero
Rekomencu. Komputila Modulo 4 nun aperos kiel USB-Eterreta adaptilo.
Framba Pi A, B, B+, 2B, 3B, 3B+
La USB-pordoj ĉe ĉi tiuj modeloj estas konektitaj per nabo-ico (LAN9512/LAN9514 aŭ VIA Labs), kiu forprenas OTG-kapablojn. Ili povas funkcii nur kiel USB-gastigantoj, do neniu OTG-subteno haveblas.
Uzante la diversajn aparatospecojn
Ĉi tiu sekcio priskribas kiel agordi la plej oftajn reĝimojn de la noviletoj.
Amasstokado aparatoj
Por uzi Raspberry Pi kiel amasmemorilon (kiel USB-memorilon), vi devos krei subtenan file por teni la konservitajn datumojn:
- Kodo
- # Ekzampekzemple: Krei 256 MB file funkcii kiel "USB-bastoneto"
- sudo dd se=/dev/nulo de=disko.bin bs=1M kalkulo=256
- # Krei VFAT-on file sistemo sur la subtena vendejo
- sudo mkfs.vfat disko.bin
- Redaktu /etc/modprobe.d/g_mass_storage.conf por diri al la sistemo uzi la rezervan stokejon:
- Kodo
- opcioj g_amas_stokado file=/drive.bin stall=0 forprenebla=1
- Vi povas ekzameni la enhavon de la rezerva stokejo muntante ĝin sur via Raspberry Pi. Jen ni muntas ĝin en dosierujo nomata muntpunkto:
- Kodo
- sudo mkdir muntpunkto
- sudo mount -o loop drive.bin muntpunkto
Vi devos ĝustigi la vojojn laŭbezone.
Eterretaj aparatoj
Kiam la aparato g_ether estas konektita al Linuksa gastiganto, ĝi kutime aperas kiel retinterfaco nomita usb0 (kiam oni uzas ifconfig).
Vi povas (kutime) konektiĝi al la aparato per SSH, jene:
- Kodo
- ssh pi@raspberrypi.local
Seriaj aparatoj
Kiam Raspberry Pi estas agordita kiel g_seria aparato, nova seria aparato aperos (kiam oni uzas Raspberry Pi OS Bookworm kun kerno 6.12.34, tio estis /dev/ttyGS0). Kiam tiu Raspberry Pi aparato estas poste konektita al (ekz.ample, Linukso) gastiganto, la aparato estos rekonita kiel CDC ACM-kongrua aparato kaj aperos kiel alia seria pordo. Ekzempleampekzemple, sur Raspberry Pi 500 funkcianta per Bookworm, ĝi aperas kiel /dev/ttyACM0.
Sub Linukso, vi povas testi la serian konekton per "screen" sur ĉiu aparato. Se vi uzas Vindozon sur la gastiganto, io simila al Putty devus funkcii bone.
Sur via Raspberry Pi:
- Kodo
- ekrano /dev/ttyGS0
Sur Linuksa gastiganto:
- Kodo
- ekrano /dev/ttyACM0
Poste tajpu ion en ĉiun fenestron — la rezulto devus aperi sur la alia ekrano anstataŭe.
Notu
Se `screen` ne estas instalita, uzu `sudo apt install screen` en terminala fenestro.
Estas facile vidi kiel ĉi tiu funkcio povus esti uzata por provizi serian interfacon al Raspberry Pi-aparato, kiu monitoras kelkajn sensilojn (ekz. per I2C aŭ SPI) kaj transdonas la kolektitajn informojn reen, per la seria pordo, al la gastiga komputilo.
ConfigFS/usb_gadget: kuraĝa nova mondo
Kvankam ili estas sendube la plej ofta maniero por agordi OTG sur Raspberry Pi-aparatoj, la supre priskribitaj mekanismoj fakte estis anstataŭitaj de io nomata usb_gadget, kiu estas parto de ConfigFS.
ConfigFS estas interfaco de la Linuksa kerno (virtuala file sistemo muntita ĉe /sys/kernel/config) uzata por agordi kernajn objektojn —inkluzive de USB-aparatpeliloj — modula maniero. Uzi ConfigFS / usb_gadget estas pli fleksebla ol la malnova metodo g_mass_storage /g_ether, ĉar vi povas samtempe komponi plurajn USB-funkciojn (ekz. Eterreto + seria + amasa memoro).
Tamen, ĉi tiu ekstra funkcio ja venas kun pli alta agorda kosto.
La baza ideo estas, ke aro de virtualaj dosierujoj kaj files estas kreita sub la dosierujo /sys/kernel/config, kiu difinas la bezonatan novileton.
Iom da kerna dokumentado pri usb_gadgets haveblas ĉi tie: https://docs.kernel.org/driver-api/usb/gadget.html kaj https://www.kernel.org/doc/Documentation/ABI/testing/configfs-usb-gadget.
Agordi
Agordi la USB-flankaparaton DWC estas same kiel en la hereda reĝimo. Redaktu config.txt kiel sudo kaj aldonu:

Ni povas kontroli, ke ĝi ŝarĝiĝis ĝuste, rigardante la enhavon de /sys/kernel/config, kiu nun devus enhavi dosierujon nomatan usb_gadget.
Sekvas la kreado de la efektiva USB-aparato, kiu implikas krei dosierujon kun la nomo de la aparato kaj poste krei aron da enskriboj ene de tiu dosierujo por difini la ecojn de la aparato. Ĉi tiu eltiraĵo el bash-skripto faras plejparton de la bezonata agordo:

Nun kiam la bazaj aparatodatumoj estas agorditaj, ni bezonas diri al la aparato precize kio ĝi estas. Krei ĉiun aparaton estas tiel simple kiel krei dosierujon en la funkciodosierujo de la ConfigFS-aparato kaj poste ligi tiun dosierujon al la agorda eniro ene de la sama aparato.
Seria (CDC ACM):

Eterreto (RNDIS kaj ECM):
Amasa stokado:
Kiel ĉe la hereda aranĝo, ni bezonas rezervan stokejon por nia amasmemorilo:

Kaj por uzi tion:

Konsileto
/sys/class/udc estas dosierujo ene de sysfs file sistemo kiu reprezentas la disponeblajn USB-aparatajn regilojn (UDC-ojn). Ĝi permesas al la USB-aparata subsistemo de la kerno identigi kaj interagi kun aparataraj UDC-oj sur aparato, ebligante al la sistemo funkcii kiel USB-flankaparato. Vi povas listigi ĝian enhavon uzante ls /sys/class/udc/ por trovi la nomon de la UDC, ekzemple 3f980000.usb, kaj poste skribi tiun nomon al la agordo de aparato por ligi la aparaton al la UDC.
Post kiam la agordo finiĝos, la dosierstrukturo kaj enhavo devus simili al la antaŭaampjen la jenan, kiu starigas kaj serian aparaton kaj Eterretan aparaton sur la sama aparato:

Nun rekomencu, poste konektu la Raspberry Pi-aparaton al gastiga aparato (ekz. alia Raspberry Pi, Vindoza komputilo, aŭ Linuksa komputilo). La gastiga aparato devus havi USB-Eterretan aparaton kaj serian aparaton ligitajn.
Igi ĉion funkcii
Ĉiuj supre priskribitaj komandoj devas esti rulataj ĉiufoje kiam la Raspberry Pi-aparato ekfunkcias. Ĉar Raspberry Pi OS uzas systemd, tio estas la taŭga maniero por ruli la startigan skripton, kiu faras la tutan agordon. Jen ekzemplo.ampla skripto kiu kolektas ĉiujn instrukciojn de supre:

Ni nun bezonas diri al systemd lanĉi nian skripton ĉe starto.
Kreu a file en /lib/systemd/system — la nomo, kiun vi elektas, dependas de vi (kondiĉe ke la sufikso estas .service), sed por ĉi tiu ekzampekzemple, ni uzos mass-storage-device.service. Enigu la jenon en la file (notu, ke ekzistas multaj diversaj ebloj por ĉi tiuj servoj) files; ni ĵus uzis tiujn, kiujn ni bezonas):

Vi devos ŝanĝi la linion ExecStart por montri al kie ajn vi konservis la agordan skripton. Vi tiam devos diri al systemd lanĉi la servon ĉe starto:

Nun kiam vi konektas vian Raspberry Pi al gastiganto, ĝi devus aperi kiel amasmemorilo. Vi povas malŝalti la systemd-servon jene:

Aldonante ensalutan konzolon al seria pordo
Se vi agordis vian Raspberry Pi kiel serian aparaton, vi eble volos uzi tiun serian aparaton por ensaluti al la aparato, anstataŭ nur uzi ĝin por punkt-al-punkta seria komunikado. Ĉe la plej nova versio de Raspberry Pi OS funkcianta per systemd, tio estas facila. Vi devas diri al la sistemo krei getty-on sur la seria pordo, kaj poste diri al systemd lanĉi ĝin. La sekvanta agordas la getty-on sur ttyGS0 (la tty kreita dum uzado de ConfigFS por agordi serian aparaton); vi eble bezonos ĝustigi tion por kongrui kun kiu ajn tty la seria aparato estas asignita.

Ĉi tio lanĉos getty-on per la seria pordo kaj certigos, ke ĝi aŭtomate lanĉiĝos ĉe ĉiu restartiĝo.
Konsileto
Kio estas getty? En Linukso, getty estas programo kiu administras terminalojn (kaj fizikajn seriajn pordojn kaj virtualajn konzolojn) por permesi al pluraj uzantoj ensaluti al sistemo, pritraktante taskojn kiel inicialigi la terminalon, montri ensalutan instigon, kaj alvoki la ensalutan programon por aŭtentikigi la uzanton.
Ĉi tiu funkcio povas esti aparte utila ĉe io kiel Raspberry Pi Zero aŭ Raspberry Pi Zero 2 W. Kun nur unu USB-konekto provizanta kaj potencon kaj serian komunikadon, vi povas konekti la aparaton kaj ensaluti al ĝi per terminalo.
Konkludo
Por veraj USB-aparataj projektoj (ekz. Eterreto, seria konektilo, amasa memoro), la familio Raspberry Pi Zero kaj la komputilaj moduloj de Raspberry Pi estas la plej bona elekto.
Raspberry Pi 4 kaj Raspberry Pi 5 ja ofertas OTG-subtenon, sed iliaj potencaj postuloj povas esti problemo.
La platoj Raspberry Pi A, B, 2B, 3B kaj 3B+ ne subtenas OTG.
Se via projekto multe dependas de OTG, la plej bonaj elektoj estas Raspberry Pi Zero 2 W aŭ Raspberry Pi Compute Module 4 kun la Compute Module 4 IO-tabulo.
Estas du ebloj rilate al la programaro: la hereda sistemo estas ankoraŭ ofte uzata kaj facile agordi; la sistemo ConfigFS postulas pli da laboro por agordi sed ja provizas pli bonan funkciecon.
Rapida referenca tabelo
| Modelo | Subteno OTG | Notoj |
| Frambo Pi Nulo / Nulo W / Nulo 2 W | Jes | Plene subtenata per USB-datenpordo |
| Raspberry Pi 4 | Jes ¹ | USB-C-pordo en aparata reĝimo |
| Raspberry Pi 5 | Jes ¹ | USB-C-pordo en aparata reĝimo |
| Framba Pi A/B/2B/3B/3B+ | Ne | Nur gastiga reĝimo |
| Raspberry Pi Komputa Modulo 1–3 | Jes | Eksponita sur OTG-stiftoj |
| Raspberry Pi Komputa Modulo 4 | Jes | mikro-USB sur CM4 IO-tabulo |
¹ Raspberry Pi 4 kaj 5 kutime tiras energion de la gastiganto per la USB-kablo, do povas esti limigoj pri la havebla kurento pro la pli altaj potenco-postuloj de ĉi tiuj aparatoj.
Kontaktaj detaloj por pliaj informoj
Bonvolu kontakti applications@raspberrypi.com se vi havas demandojn pri ĉi tiu blanka libro. Web: www.raspberrypi.com
Oftaj Demandoj
Kiuj estas la riskoj asociitaj kun la ebligado de OTG-reĝimo?
Ebligi OTG-reĝimon postulas redaktan sistemon fileoj, kiuj povus prezenti riskon se faritaj malĝuste. Estas rekomendinde atente sekvi la instrukciojn kaj fari sekurkopion de gravaj datumoj antaŭ ol fari ŝanĝojn.
Ĉu mi povas uzi OTG-reĝimon sur Raspberry Pi-modeloj krom Zero, Zero W kaj Zero 2 W?
Kvankam la instrukcioj estas specifaj por la menciitaj modeloj, vi povas esplori similajn konfiguraciojn ĉe aliaj Raspberry Pi SBC-oj kun taŭgaj adaptoj.
Dokumentoj/Rimedoj
![]() |
ResearchGate Raspberry Pi Unuplata Komputilo [pdf] Instrukcia Manlibro Unuplata komputilo de Raspberry Pi, Raspberry Pi, Unuplata komputilo, Plata komputilo, Komputilo |
