Motion mit UV4L auf dem Raspberry Pi

In meinem früheren Post habe ich dargestellt, wie man Motion auf dem Raspberry Pi installiert und zusammen mit dem Kameramodul als Überwachungskamera nutzen kann. ➡ Raspberry Pi Kamera-Modul mit Motion als kleine Überwachungskamera
Diese Anleitung kann man auch nach wie vor nutzen, wenn man Raspbian Wheezy auf dem Pi installiert. Will man aber das neue Raspbian Jessie installieren, dann gibt es mit einigen Paketen noch Probleme. Leider sind nämlich noch nicht alle erforderlichen Pakete für Jessie in den Repositories vorhanden.

Aber es gibt zum Glück ein gute Alternative, damit man Motion auch mit Jessie nutzen kann. Es wird dafür das Treibersammlung UV4L aus den Repositories von Wheezy verwendet. Nachfolgend wird aufgezeigt, wie das Ganze funktioniert.

UV4L installieren

curl http://www.linux-projects.org/listing/uv4l_repo/lrkey.asc | sudo apt-key add -

Das trägt die folgende Zeile in /etc/apt/source.list ein.

deb http://www.linux-projects.org/listing/uv4l_repo/raspbian/ wheezy main

source.list
source.list

Nun kann mann die erforderlichen UV4L-Pakete installieren.

sudo aptitude update && sudo aptitude install uv4l uv4l-raspicam uv4l-raspicam-extras

Eine kleine Prüfung zeigt, ob alles korrekt installiert ist. Der Service uv4l_raspicam wird neugestartet. Kommt keine Fehlermeldung, dann funktioniert alles.

sudo service uv4l_raspicam restart

Mit dem folgenden Befehl kann man bereits erste Bilder mit der Kamera aufnehmen.

dd if=/dev/video0 of=snapshot.jpeg bs=11M count=1

Es ist dabei zu beachten, dass die Kamera als /dev/video1 registriert wird. Führt man gleich danach, ohne einen Neustart Motion aus, dann wird dort die Kamera ggfs. als /dev/video1 registriert, was eine Anpassung der Konfigurationsdatei erforderlich machen könnte. Wir werden aber versuchen das zu vermeiden 🙂

Motion installieren und konfigurieren

Motion lässt sich aus den Repositories installieren.

sudo aptitude install motion

Eine Beispielkonfiguration von Motion bekommt man von der Homepage des Projekts via wget.
Ich habe auf meinem Pi die Konfigurationsdatei in das Verzeichnis /home/pi/motion gespeichert. In den nachfolgenden Schritten wird deshalb dieses Verzeichnis verwendet.

wget http://linux-projects.org/downloads/examples/motion.conf

Bevor wir weitermachen, starten wir den Pi neu. Damit umgehen wir evtl. das oben beschriebenen Problem mit der Registration des Kameramoduls als /dev/video1.

sudo reboot

Neustart erfolgreich, dann starten wir den Treiber von UV4L im Hintergrund.

uv4l --driver raspicam --auto-video_nr

Hier aber trotzdem noch auf die Ausgabe achten. Lauten die Zeilen wie folgt, dann funktioniert alles wie es soll.

[notice] [core] Device detected!
[notice] [core] Registering device node /dev/video0

Und endlich können wir Motion starten.

LD_PRELOAD=/usr/lib/uv4l/uv4lext/armv6l/libuv4lext.so motion -c /home/pi/motion/motion.conf

Kontrollieren, ob Motion erfolgreich gestartet wurde, sieht man direkt nach dem Start auf den Konsole
2016-01-28_174254

Über top kann man schauen den Prozess Motion überwachen.

top

top - Motion
top – Motion

Im Webbrowser kann unter der Adresse http://ip-adresse-des-pis:8081 sollte der Kamera-Stream aufzurufen sein.

Motion lässt sich an die eigenen Bedürfnisse recht einfach anpassen. Da die Datei motion.conf recht gut kommentiert ist, ist diese Aufgabe recht schnell erledigt. Weitere Informationen finden sich auf der Seite des Entwicklers ➡ http://www.lavrsen.dk/foswiki/bin/view/Motion/WebHome

Die neue Konfiguration lässt sich gleich testen. Zuerst ist Motion zu stoppen und dann erneut, mit der neuen Konfigurationsdatei neu zu starten.

sudo /etc/init.d/motion stop


LD_PRELOAD=/usr/lib/uv4l/uv4lext/armv6l/libuv4lext.so motion -c /home/pi/motion/motion.conf


Gib mir gerne einen Kaffee ☕ aus!

Wenn dir meine Beiträge gefallen und geholfen haben, dann kannst du mir gerne einen Kaffee ☕ ausgeben.

PayPal Logo


liberapay.com/strobelstefan.org


Kaffee via Bitcoin

bc1qfuz93hw2fhdvfuxf6mlxlk8zdadvnktppkzqzj


Automatischer Start von Motion mit einem cron-Job

Damit Motion auch automatisch bei jedem Start des Raspberry Pis automatisch startet, kann man noch einen crontab anlegen.

crontab -e

@reboot LD_PRELOAD=/usr/lib/uv4l/uv4lext/armv6l/libuv4lext.so motion -c /home/pi/motion/motion.conf 

Weitere Informationen zu Motion hier im Blog