Raspberry-Pi-LOGO

De Raspberry Pi Compute-module inrichten

Het inrichten van het Raspberry-Pi-Compute-Module-PRODUCT

De Raspberry Pi Compute Module inrichten (versie 3 en 4)
Raspberry Pi Ltd
2022-07-19: githash: 94a2802-clean

Colofon
© 2020-2022 Raspberry Pi Ltd (voorheen Raspberry Pi (Trading) Ltd.)
Deze documentatie is gelicenseerd onder een Creative Commons Naamsvermelding-GeenAfgeleideWerken 4.0 Internationaal (CC BY-ND). build-datum: 2022-07-19 build-versie: githash: 94a2802-clean

Juridische disclaimer

TECHNISCHE EN BETROUWBAARHEIDSGEGEVENS VOOR RASPBERRY PI-PRODUCTEN (INCLUSIEF DATASHEETS) ZOALS VAN TIJD TOT TIJD WORDEN GEWIJZIGD (“BRONNEN”) WORDEN GELEVERD DOOR RASPBERRY PI LTD (“RPL”) “AS IS” EN ELKE EXPLICIETE OF IMPLICIETE GARANTIE, INCLUSIEF MAAR NIET BEPERKT WORDEN DE IMPLICIETE GARANTIES VAN VERKOOPBAARHEID EN GESCHIKTHEID VOOR EEN BEPAALD DOEL AFGEWEZEN. VOOR ZOVER MAXIMAAL TOEGESTAAN DOOR DE TOEPASSELIJKE WETGEVING IS RPL IN GEEN GEVAL AANSPRAKELIJK VOOR ENIGE DIRECTE, INDIRECTE, INCIDENTELE, SPECIALE, VOORBEELDSCHADE OF GEVOLGSCHADE (INCLUSIEF MAAR NIET BEPERKT TOT DE AANSCHAF VAN VERVANGENDE GOEDEREN OF DIENSTEN; VERLIES VAN GEBRUIK, GEGEVENSVERLIES) , OF WINST; OF BEDRIJFSONDERBREKING) WELKE OORZAAK OOK OORZAAK IS EN OP ELKE THEORIE VAN AANSPRAKELIJKHEID, HETZIJ IN CONTRACT, STRIKTE AANSPRAKELIJKHEID OF ONRECHTMATIGE DAAD (INCLUSIEF NALATIGHEID OF ANDERSZINS) DIE OP ENIGE WIJZE VOORTVLOEIT UIT HET GEBRUIK VAN DE MIDDELEN, ZELFS INDIEN OP DE HOOGTE GESTELD VAN DE MOGELIJKHEID VAN DERGELIJKE SCHADE.
RPL behoudt zich het recht voor om op elk moment en zonder verdere kennisgeving verbeteringen, verbeteringen, correcties of andere wijzigingen aan te brengen aan de BRONNEN of producten die erin worden beschreven. De RESOURCES zijn bedoeld voor bekwame gebruikers met een geschikt niveau van ontwerpkennis. Gebruikers zijn als enige verantwoordelijk voor hun selectie en gebruik van de BRONNEN en elke toepassing van de producten die erin worden beschreven. Gebruiker stemt ermee in RPL schadeloos te stellen en te vrijwaren van alle aansprakelijkheden, kosten, schade of andere verliezen die voortvloeien uit het gebruik van de MIDDELEN. RPL verleent gebruikers toestemming om de RESOURCES uitsluitend in combinatie met de Raspberry Pi-producten te gebruiken. Elk ander gebruik van de RESOURCES is verboden. Er wordt geen licentie verleend voor enige andere RPL of ander intellectueel eigendomsrecht van derden. ACTIVITEITEN MET EEN HOOG RISICO. Raspberry Pi-producten zijn niet ontworpen, vervaardigd of bedoeld voor gebruik in gevaarlijke omgevingen die storingsveilige prestaties vereisen, zoals bij de werking van nucleaire faciliteiten, vliegtuignavigatie- of communicatiesystemen, luchtverkeersleiding, wapensystemen of veiligheidskritische toepassingen (inclusief levensondersteunende systemen en andere medische apparaten), waarbij het falen van de producten direct kan leiden tot de dood, persoonlijk letsel of ernstige fysieke of milieuschade (“Activiteiten met een hoog risico”). RPL wijst uitdrukkelijk elke expliciete of impliciete garantie van geschiktheid voor activiteiten met een hoog risico af en aanvaardt geen aansprakelijkheid voor het gebruik of de opname van Raspberry Pi-producten in activiteiten met een hoog risico. Raspberry Pi-producten worden geleverd onder de standaardvoorwaarden van RPL. De terbeschikkingstelling door RPL van de HULPMIDDELEN vormt geen uitbreiding of wijziging van de standaardvoorwaarden van RPL, met inbegrip van maar niet beperkt tot de disclaimers en garanties die erin worden uitgedrukt.

Documentversiegeschiedenis Provisioning-de-Raspberry-Pi-Compute-Module-FIG-1Reikwijdte van documentment
Dit document is van toepassing op de volgende Raspberry Pi-producten:Provisioning-de-Raspberry-Pi-Compute-Module-FIG-2

Invoering

De CM Provisioner is een web applicatie die is ontworpen om het programmeren van een groot aantal Raspberry Pi Compute Module (CM) -apparaten veel eenvoudiger en sneller te maken. Het is eenvoudig te installeren en eenvoudig te gebruiken. Het biedt een interface naar een database met kernelafbeeldingen die kunnen worden geüpload, samen met de mogelijkheid om scripts te gebruiken om verschillende delen van de installatie aan te passen tijdens het knipperen. Het printen van labels en het updaten van firmware wordt ook ondersteund. Deze whitepaper gaat ervan uit dat de Provisioner-server, softwareversie 1.5 of nieuwer, draait op een Raspberry Pi.

Hoe het allemaal werkt

CM4
Het Provisioner-systeem moet op zijn eigen bekabelde netwerk worden geïnstalleerd; de Raspberry Pi waarop de server draait, is aangesloten op een switch, samen met zoveel CM4-apparaten als de switch kan ondersteunen. Elke CM4 die op dit netwerk is aangesloten, wordt gedetecteerd door het provisioning-systeem en automatisch geflashed met de vereiste firmware van de gebruiker. De reden voor het hebben van een eigen bekabeld netwerk wordt duidelijk als je bedenkt dat elke CM4 die op het netwerk is aangesloten, zal worden ingericht, dus het is essentieel om het netwerk gescheiden te houden van elk live netwerk om onbedoelde herprogrammering van apparaten te voorkomen.

Provisioning-de-Raspberry-Pi-Compute-Module-FIG-3AFBEELDING VERANDERT CM 4 IO-kaarten met CM 4 -> CM4 IO-kaarten met CM4

Door een Raspberry Pi als server te gebruiken, is het mogelijk om bekabelde netwerken voor de Provisioner te gebruiken, maar toch toegang tot externe netwerken mogelijk te maken via draadloze connectiviteit. Hierdoor kunnen eenvoudig afbeeldingen naar de server worden gedownload, klaar voor het inrichtingsproces, en kan de Raspberry Pi de Provisioner bedienen web koppel. Er kunnen meerdere afbeeldingen worden gedownload; de Provisioner houdt een database met afbeeldingen bij en maakt het gemakkelijk om de juiste afbeelding te selecteren voor het instellen van verschillende apparaten.
Wanneer een CM4 is aangesloten op het netwerk en wordt ingeschakeld, zal deze proberen op te starten, en zodra andere opties zijn geprobeerd, wordt geprobeerd op te starten via het netwerk. Op dit punt reageert het DHCP-systeem (Dynamic Host Configuration Protocol) van de Provisioner op de CM4 die opstart en voorziet deze van een minimale opstartbare afbeelding die naar de CM4 wordt gedownload en vervolgens als root wordt uitgevoerd. Deze afbeelding kan de ingebouwde Multi-Media Card (eMMC) programmeren en alle vereiste scripts uitvoeren, volgens de instructies van de Provisioner.

Meer details
CM4-modules worden geleverd met een opstartconfiguratie die eerst probeert op te starten vanaf eMMC; als dat niet lukt omdat de eMMC leeg is, zal het een preboot execution environment (PXE) netwerkboot uitvoeren. Dus met CM4-modules die nog niet zijn ingericht en een lege eMMC hebben, wordt standaard een netwerkboot uitgevoerd. Tijdens het opstarten van een netwerk op een provisioning-netwerk, wordt een lichtgewicht utility-besturingssysteem (OS)-image (eigenlijk een Linux-kernel en een scriptexecute initramfs) door de provisioning-server naar de CM4-module over het netwerk gestuurd, en deze image handelt de provisioning af.

CM 3 en CM 4s

De CM-apparaten die op de SODIMM-connector zijn gebaseerd, kunnen niet via het netwerk opstarten, dus het programmeren gebeurt via USB. Elk apparaat moet worden aangesloten op de Provisioner. Als u meer dan 4 apparaten moet aansluiten (het aantal USB-poorten op de Raspberry Pi), kan een USB-hub worden gebruikt. Gebruik USB-A naar Micro-USB-kabels van goede kwaliteit, die vanaf de Raspberry Pi of hub worden aangesloten op de USB-slavepoort van elk CMIO-bord. Alle CMIO-kaarten hebben ook een voeding nodig en de J4 USB-slave-opstartjumper moet worden ingesteld op inschakelen

Provisioning-de-Raspberry-Pi-Compute-Module-FIG-4BELANGRIJK
Sluit de ethernetpoort van de Pi 4 NIET aan. De draadloze verbinding wordt gebruikt om toegang te krijgen tot het beheer web interface.

Installatie

De volgende instructies waren correct op het moment van uitgifte. De allernieuwste installatie-instructies zijn te vinden op de Provisioner GitHub-pagina.

De Provisioner installeren web toepassing op een Raspberry Pi
WAARSCHUWING
Zorg ervoor dat eth0 verbinding maakt met een Ethernet-switch waarop alleen de CM4 IO-kaarten zijn aangesloten. Sluit eth0 niet aan op uw kantoor-/openbare netwerk, anders kan het ook andere Raspberry Pi-apparaten in uw netwerk 'provisioneren'. Gebruik de Raspberry Pi draadloze verbinding om verbinding te maken met uw lokale netwerk.

De Lite-versie van het Raspberry Pi-besturingssysteem wordt aanbevolen als het basisbesturingssysteem waarop de Provisioner wordt geïnstalleerd. Gebruik voor het gemak rpi-imager en activeer het geavanceerde instellingenmenu (Ctrl-Shift-X) om het wachtwoord, de hostnaam en de draadloze instellingen in te stellen. Zodra het besturingssysteem op de Raspberry Pi is geïnstalleerd, moet u het Ethernet-systeem instellen:

  1. Configureer eth0 voor een statisch IP-adres (Internet Protocol) van 172.20.0.1 binnen een /16 subnet (netmasker 255.255.0.0) door de DHCP-configuratie te bewerken:
    • sudo nano /etc/dhcpcd.conf
    • Voeg toe aan de onderkant van de file:
      interface eth0
      statisch ip_adres=172.20.0.1/16
    • Start opnieuw op om de wijzigingen door te voeren.
  2. Zorg ervoor dat de installatie van het besturingssysteem up-to-date is:
    sudo apt-update
    sudo apt full-upgrade
  3. De Provisioner wordt geleverd als kant-en-klaar .deb file op de Provisioner GitHub-pagina. Download de nieuwste versie van die pagina of gebruik wget en installeer deze met de volgende opdracht:
    sudo apt install ./cmprovision4_*_all.deb
  4. Stel de web applicatie gebruikersnaam en wachtwoord:
    sudo /var/lib/cmprovision/artisan auth:creëer-gebruiker

U kunt nu toegang krijgen tot de web interface van de Provisioner met een web browser met behulp van het draadloze IP-adres van de Raspberry Pi en de gebruikersnaam en het wachtwoord die in de vorige sectie zijn ingevoerd. Voer gewoon het IP-adres in de adresbalk van uw browser in en druk op Enter.

Gebruik

Wanneer u voor het eerst verbinding maakt met de Provisioner web toepassing met uw web browser ziet u het Dashboard-scherm, dat er ongeveer zo uit zal zien:Provisioning-de-Raspberry-Pi-Compute-Module-FIG-5

Deze bestemmingspagina geeft eenvoudig wat informatie over de laatste actie die is uitgevoerd door de Provisioner (in de examphierboven is een enkele CM4 ingericht).

Afbeeldingen uploaden

De eerste handeling die nodig is bij het instellen, is het laden van uw afbeelding naar de server, vanwaar deze kan worden gebruikt om uw CM4-borden in te richten. Klik op het menu-item 'Afbeeldingen' bovenaan de web pagina en je zou een scherm moeten krijgen dat lijkt op het scherm hieronder, met een lijst met momenteel geüploade afbeeldingen (die in eerste instantie leeg zal zijn).Provisioning-de-Raspberry-Pi-Compute-Module-FIG-6

Selecteer de knop Afbeelding toevoegen om een ​​afbeelding te uploaden; je ziet dit scherm:
Provisioning-de-Raspberry-Pi-Compute-Module-FIG-7

De afbeelding moet toegankelijk zijn op het apparaat waarop de web browser actief is en in een van de opgegeven afbeeldingsindelingen. Selecteer de afbeelding van uw machine met behulp van de standaard file dialoogvenster en klik op 'Uploaden'. Dit kopieert nu de afbeelding van uw machine naar de Provisioner-server die op de Raspberry Pi draait. Dit kan enige tijd duren. Zodra de afbeelding is geüpload, ziet u deze op de pagina Afbeeldingen.

Een project toevoegen

Nu moet je een project maken. U kunt een willekeurig aantal projecten opgeven en elk project kan een andere afbeelding, set scripts of label hebben. Het actieve project is het project dat momenteel wordt gebruikt voor provisioning.
Klik op het menu-item 'Projecten' om de pagina Projecten te openen. De volgende example heeft al één project, genaamd 'Testproject', opgezet.

Provisioning-de-Raspberry-Pi-Compute-Module-FIG-8Klik nu op 'Project toevoegen' om een ​​nieuw project op te zettenProvisioning-de-Raspberry-Pi-Compute-Module-FIG-9

  • Geef het project een passende naam en selecteer vervolgens welke afbeelding u voor dit project wilt gebruiken in de vervolgkeuzelijst. U kunt op deze s ook een aantal andere parameters instellentage, maar vaak is alleen de afbeelding voldoende.
  • Als u v1.5 of nieuwer van de Provisioner gebruikt, heeft u de mogelijkheid om te controleren of het flashen correct is voltooid. Als u dit selecteert, worden de gegevens van het CM-apparaat na het flitsen teruggelezen en wordt bevestigd dat deze overeenkomen met de originele afbeelding. Dit zal extra tijd toevoegen aan het inrichten van elk apparaat, de hoeveelheid toegevoegde tijd is afhankelijk van de grootte van de afbeelding.
  • Als je de te installeren firmware selecteert (dit is optioneel), heb je ook de mogelijkheid om die firmware aan te passen met een aantal specifieke configuratie-items die zullen worden samengevoegd met het binaire bestand van de bootloader. De beschikbare opties vind je op de Raspberry Pi webplaats.
  • Klik op 'Opslaan' als u uw nieuwe project volledig heeft gedefinieerd; u keert terug naar de pagina Projecten en het nieuwe project wordt weergegeven. Houd er rekening mee dat er slechts één project tegelijk actief kan zijn en dat u het uit deze lijst kunt selecteren.

Scripts
Een erg handige functie van Provisioner is de mogelijkheid om scripts op de afbeelding uit te voeren, voor of na installatie. Drie scripts worden standaard geïnstalleerd in de Provisioner en kunnen worden geselecteerd bij het maken van een nieuw project. Ze staan ​​vermeld op de Scriptspagina

Provisioning-de-Raspberry-Pi-Compute-Module-FIG-10

een exampHet gebruik van scripts kan zijn om aangepaste items toe te voegen aan config.txt. Het standaardscript Add dtoverlay=dwc2 to config.txt doet dit met behulp van de volgende shell-code:Provisioning-de-Raspberry-Pi-Compute-Module-FIG-11

Klik op 'Script toevoegen' om uw eigen aanpassingen toe te voegen:Provisioning-de-Raspberry-Pi-Compute-Module-FIG-12

Etiketten
De Provisioner heeft de mogelijkheid om labels af te drukken voor het apparaat dat wordt ingericht. De pagina Labels toont alle vooraf gedefinieerde labels die kunnen worden geselecteerd tijdens het bewerkingsproces van het project. Voor bijvample, wilt u misschien DataMatrix- of Quick Response (QR)-codes afdrukken voor elk bord dat is voorzien, en deze functie maakt dit heel gemakkelijk.Provisioning-de-Raspberry-Pi-Compute-Module-FIG-13

Klik op 'Label toevoegen' om uw eigen label op te geven: Provisioning-de-Raspberry-Pi-Compute-Module-FIG-14

Bedrijfsprogramma

De Provisioner biedt de mogelijkheid om aan te geven welke versie van de bootloader-firmware u op de CM4 wilt installeren. Op de pagina Firmware staat een lijst met alle mogelijke opties, maar de meest recente is meestal de beste.Provisioning-de-Raspberry-Pi-Compute-Module-FIG-15Om de lijst bij te werken met de nieuwste versies van de bootloader, klikt u op de knop 'Download nieuwe firmware van github'.

Mogelijke problemen

Verouderde bootloader-firmware
Als je CM4 niet wordt gedetecteerd door het Provisioner-systeem wanneer deze is aangesloten, is het mogelijk dat de bootloader-firmware verouderd is. Merk op dat op alle CM4-apparaten die sinds februari 2021 zijn gefabriceerd de juiste bootloader in de fabriek is geïnstalleerd, dus dit gebeurt alleen met apparaten die vóór die datum zijn geproduceerd.

Reeds geprogrammeerde eMMC
Als de CM4-module al boot files in de eMMC van een eerdere inrichtingspoging, dan zal het opstarten vanaf de eMMC en zal het netwerk opstarten dat nodig is voor inrichting niet plaatsvinden.
Als u een CM4-module opnieuw wilt inrichten, moet u:

  • Sluit een USB-kabel aan tussen de inrichtingsserver en de micro-USB-poort van de CM4 IO Board (met het label 'USB-slave').
  • Plaats een jumper op de CM4 IO-kaart (J2, 'Fit jumper to disable eMMC boot').

Dit zorgt ervoor dat de CM4-module een USB-boot uitvoert, in welk geval de inrichtingsserver het files van het hulpprogramma OS via USB.
Nadat het hulpprogramma-besturingssysteem is opgestart, neemt het via Ethernet contact op met de inrichtingsserver om verdere instructies te ontvangen en extra te downloaden files (bijv. de OS-image die naar eMMC moet worden geschreven) zoals gewoonlijk. Er is dus nog steeds een Ethernet-verbinding nodig naast de USB-kabel.

Spanning Tree Protocol (STP) op beheerde Ethernet-switches
PXE-opstart werkt niet correct als STP is ingeschakeld op een beheerde Ethernet-switch. Dit kan de standaardinstelling zijn op sommige switches (bijv. Cisco), en als dat het geval is, moet het worden uitgeschakeld om het inrichtingsproces correct te laten werken.
Raspberry Pi is een handelsmerk van de Raspberry Pi Foundation
Raspberry Pi Ltd

Documenten / Bronnen

Raspberry Pi Provisioning van de Raspberry Pi Compute Module [pdf] Gebruikershandleiding
Provisioning van de Raspberry Pi Compute Module, Provisioning, de Raspberry Pi Compute Module, Compute Module

Referenties

Laat een reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd *