61iFtjFQX3L._SL1000_

Erste Schritte, GPIO

Raspberry Pi Zero – Ethernet Verbindung herstellen (ENC28J60)

Dank des günstigen Raspberry Pi Zeros werden Internet of Things (IoT) Projekte weiter wachsen. Einen Nachteil, den die Modelle Zero und A+ haben, ist der fehlende Ethernet-Anschluss. Das wäre soweit kein Problem, wäre nicht auch nur ein einziger (Micro) USB Port onboard.

Um diese Modelle ohne WLAN Adapter dennoch per Ethernetkabel mit dem Netzwerk zu verbinden, kann man dies über die GPIOs tun: Dafür wird lediglich das „ENC28J60“ Modul benötigt, dessen Anschluss in diesem Tutorial gezeigt wird.



Warum Ethernet?

Das Raspberry Pi Model Zero besitzt ähnlich zum Model A+ nur einen einzigen USB Anschluss. Schließt man eine Tastatur an, so braucht man für ein weiteres USB Gerät gezwungenermaßen einen (aktiven) USB Hub, welcher auch wieder mit Strom versorgt werden will und außerdem einen weiteren Kabelsalat verursacht. Um auf eine Tastatur verzichten zu können und den Pi über SSH zu steuern, braucht man eine Netzwerkverbindung. Nun kann man entweder über USB einen WLAN Adapter anschließen, oder die GPIOs nutzen:

Der Raspberry Pi bietet eine 40 köpfige GPIO Leiste, die sogar noch erweitert werden kann, hier bestehen also kaum Einschränkungen. Mit dem ENC28J60 Modul ist es möglich eine Netzwerkverbindung über ein Ethernetkabel zu erstellen. Das bietet den Vorteil, dass der einzige freie USB Anschluss anderweitig genutzt werden kann und du dennoch ein USB Gerät anschließen kannst – ohne Hub.

 

Zubehör

Folgende Teile wirst du benötigen:

Zwar funktioniert das ganze auch mit einem Raspberry Pi B/B+/2B, allerdings haben alle B-Modelle einen integrierten Ethernet Port, weshalb es wenig Sinn macht zusätzlich einen Externen anzuschließen.

 

Anschluss

Es gibt verschiedene Versionen dieses Moduls, manche sind größer und manche sind kleiner. Damit es zu keinen Verwirrungen kommt, ist die Verbindung der Pins nur tabellarisch aufgezeigt und nicht als Bild, da auch die Position der Modul-Pins variiert. Ich habe alle bekannten Pin-Namen in eine Zeile, durch Schrägstriche getrennt, geschrieben:

ENC28J60 ModulRaspberry Pi
VCC / 3.3 / Q33V3 (Pin 1)
GNDGND (Pin 6)
CSCE0 (GPIO8, Pin 24)
SIMOSI (GPIO10, Pin 19)
SCKSCKL (GPIO11, Pin 23)
SOMISO (GPIO9, Pin 21)
INT / IRQGPIO25 (Pin 22)

 

Als Hilfe hier noch die Raspberry Pi GPIO Belegung (diese ist, bis auf das aller erste Model B der Revision 1, bei allen Modellen gleich geblieben):

RaspberyPI_GPIO_Belegung

 

Software

Ein Wort vorweg: Sofern du einen anderen Raspberry Pi hast, ist es am einfachsten die Schritte erst einmal darauf auszuführen und dann die SD Karte in den Pi Zero zu stecken. Andernfalls brauchst du einen Micro HDMI sowie einen Micro USB Adapter, womit du Bildschirm und Tastatur anschließt.

 

Das Ethernet Modul benutzt SPI, daher müssen wir es zuerst einmal freischalten, falls noch nicht bereits getan:

sudo raspi-config

Unter “8. Advanced Options” gibt es den Eintrag “A6 SPI”, welchen wir aktivieren. Ggf. ist ein Neustart nötig.

 

sudo nano /boot/config.txt

Am Ende dieser Datei fügen wir folgende Zeile ein:

dtoverlay=enc28j60

Du kannst nun neu starten und den WLAN Stick (sofern du einen nutzt) danach abnehmen.

sudo reboot

Das war’s! Dein Raspberry Pi kann nun über ein Ethernetkabel mit dem Internet verbunden werden.

 

Ein Wort zum Abschluss: Von der Geschwindigkeit her kommt ein über SPI betriebener Ethernet Port nicht an einen eingebauten Ethernet Anschluss heran. Auch eine WLAN Verbindung ist schneller. In meinen Tests hatte ich eine Download Geschwindigkeit von ca. 5Mbit/s.



, , , , ,


11 Kommentare

  1. heiko sagt:

    funktioniert das auch unter raspi mit jessie ??

  2. heiko sagt:

    komme nicht weiter, das netzwerkteil wird in meiner FB angezeigt, allerdings kann ich weder mit putty noch mit remote desktop darauf zugreifen, benutze jessie

  3. heiko sagt:

    nein weder noch, wenn ich zbsp in der raspi config das SPI aktiviere kommt, nach dem finish die meldung „modprobe: ERROR: could not insert ’spi_bcm2708′: No such device“
    kann das mit dem problem zusammen hängen,? benutze jessie

  4. heiko sagt:

    also wenn ich Devicetree abschalte kommt die fehlermeldung nicht, teil wird zwar in der FB angezeigt aber dennoch kein zugriff, was mich wundert ist das obwohl keine veränderungen am netzwerk vorgenommen werden ändern sich die IP des teiles und auch die MAC adresse

  5. heiko sagt:

    also mit Devicetree sehe ich das teil in meiner FB, wenn ich Devicetree deaktiviere dann sehe ich es nicht mehr, aber nachwievor kein zugriff auf raspi mit putty oder so

  6. Super Tutorial sagt:

    Super Tutorial

  7. Super Tutorial sagt:

    🙂

  8. Marco sagt:

    Super Anleitung!

    Hat bei mir auf anhieb funktioniert!

    Vielen Dank!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Blog abonnieren

Abonniere Tutorials-RaspberryPi, um kein Tutorial mehr zu verpassen!