GPIO Tutorial-Reihe - Part 1: LED mit FHEM steuern

Mit ** gekennzeichnete Links auf dieser Seite sind Affiliatelinks.

Kurzfristig habe ich mir überlegt eine neue Tutorial-Reihe zu starten. Diese wird in Zukunft neben der FHEM-Tutorial-Reihe laufen und alles rund um das Thema GPIO behandeln. Im ersten Video wird dabei einfach nur eine LED an GPIO angeschlossen und aus FHEM heraus geschaltet. Was auf den ersten Blick sehr einfach aussieht könnte aber schon helfen - immerhin könnte man so bereits sehr einfach eine Status-LED für Probleme realisieren. Oder diese Blinken lassen für Nofifications. Die Möglichkeiten in Kombination mit FHEM sind hier schon wirklich umfangreich.

Ansonsten brauche ich natürlich Feedback wie das Thema bei Euch ankommt und ob in der Hinsicht weiteres Interesse besteht. Ein zweiter Teil ist bereits aufgenommen und wird in den nächsten Tagen veröffentlicht. Natürlich gibt es auch wieder ein Freebie für meine Newsletter-Abonnenten, welches alle Pins und die wichtigsten Befehle übersichtlich darstellt. Das Eintragen in den Newsletter ist natürlich auch unter diesem Post möglich.

Was wird benötigt?

  • Eine FHEM-Installation
  • Ein Raspberry Pi (1, 2 oder 3)
  • Ein wenig Hardware zum Spielen (LED, Widerstände, Breadboard, …)

Video

Arduino-Kurs

Schaltplan

GPIO LED schalten

Komponenten

Ich habe mir vor längerer Zeit zu dem Raspberry Pi ein Kit mit jeder Menge Spielzeug bestellt. Das ist wahrscheinlich sogar günstiger als alles einzeln zu bestellen. Natürlich wird man nicht alles brauchen, aber es ist auf jeden Fall cool zum lernen. Mit dabei ist auch ein Buch, mit welchem man dann in C weitere Programme schreiben und ausprobieren kann.

Befehle

Als erstes muss der FHEM-Benutzer der Gruppe GPIO hinzugefügt werden, damit dieser auf die Pins zugreifen darf. Danach muss FHEM unbedingt neugestartet werden, damit die Berechtigungen wirksam werden.

sudo adduser fhem gpio
sudo /etc/init.d/fhem stop
sudo /etc/init.d/fhem start

Jetzt wird noch git installiert, damit im folgenden Schritt wiringPi installiert werden kann.

sudo apt-get install git-core

Im Home-Verzeichnis wird jetzt einfach wiringPi geladen und gebaut. Dieser Vorgang dauert je nach Raspberry Pi-Version wenige Minuten. Das Ganze wird mit einem Neustart abgeschlossen.

cd
git clone git://git.drogon.net/wiringPi
cd wiringPi
./build
sudo reboot

Um eine LED zu schalten wird jetzt in FHEM das folgende Gerät definiert. Nachdem die Richtung auf “output” gestellt wurde, kann bereits per on und off die LED geschaltet werden.

define GPIO17 RPI_GPIO 17
attr GPIO17 active_low yes
attr GPIO17 direction output

Update

Stefan hat mich in den Kommentaren darauf hingewiesen, dass ich gegen 3.3V schalte anstatt gegen 0V. Das ist natürlich richtig und auch nicht besonders elegant (auch, wenn es funktioniert). Nun ist es so, dass die GPIO auf “high” (in FHEM auf “on”) bereits ein Spannung von 3.3V bereitstellen und auf “low” gar keine Spannung anliegt. Im vorigen Beispiel oben fließt also der Strom praktisch “falsch rum” als eigentlich angedacht.

Viel intelligenter ist es also, wenn man statt 3.3V und GPIO17 lieber GND und GPIO17 nutzt. Denn dann schaltet man auch GPIO17 korrekterweise auf “high” damit die LED eingeschaltet wird. Somit kann man sich dann auch das “active_low” sparen.

define GPIO17 RPI_GPIO 17
attr GPIO17 direction output

Danke für diesen Hinweis, Stefan. Wirklich blöd von mir, dass das erste Video bereits so einen “Fehler” enthält. Auch, wenn es nur kosmetisch ist, macht es sorum natürlich viel mehr Sinn.

GPIO LED schalten


Newsletter

Trage Dich jetzt in den Newsletter ein und genieße dadurch viele Vorteile:

  • 5€-Gutschein als Dankeschön
  • Zugang zu exklusiven Inhalten
  • Angebote für Produkte

* Durch Angabe meiner E-Mail-Adresse erkläre ich mich damit einverstanden, dass mir regelmäßig Informationen und Produktempfehlungen aus dem Fachgebiet Smart Home zugesendet werden. Mit dem Eintrag akzeptieren Sie unsere Datenschutzbestimmungen. Meine Einwilligung kann ich jederzeit widerrufen.

Auf YouTube und hier im Blog gibt es bereits unzählige kostenlose Videos, Informationen und Tutorials. Wenn Dir das noch nicht reicht, ist ein Training genau das richtige für Dich! Die folgenden Trainings haben den Vorteil, dass immer von Anfang an gestartet wird und Du ohne Vorwissen teilnehmen kannst.