Projekte wie Motioneye und Motion basieren in der Regel auf dem Camera Legacy Stack von Raspi OS, der in aktuellen Systemen wie Bookworm und Trixie nicht mehr unterstützt wird.
Dennoch lassen sich diese mit libcamera / rpicam nutzen.
Das folgende Tutorial setzt ein fertig installiertes Raspi OS Bookworm oder Trixie voraus. Ob es sich hierbei und die volle, oder die Lite Variante handelt spielt keine Rolle.
Zuerst wird das System, wenn noch nicht gemacht, aktualisiert:
sudo apt update && sudo apt dist-upgrade -y
Anschließend werden notwendige Pakete für Motioneye installiert:
sudo apt --no-install-recommends install ca-certificates curl python3 -y
Auf einigen Systemen sind noch die folgenden Pakete notwendig:
sudo apt --no-install-recommends install python3-dev gcc libjpeg62-turbo-dev libcurl4-openssl-dev libssl-dev -y
Jetzt werden auch noch die notwendigen libcamera / rpicam Pakete installiert:
sudo apt install libcamera-v4l2 libcamera-tools -y
Nach der erfolgten Installation der notwendigen Pakete sorgen Wir dafür das Python3 auch Module nutzen kann, die außerhalb von „virtuellen Umfeldern“ laufen:
Dazu wird im Terminal folgendes ausgeführt:
grep -q '\[global\]' /etc/pip.conf 2> /dev/null || printf '%b' '[global]\n' | sudo tee -a etc/pip.conf > /dev/null
sudo sed -i '/^\[global\]/a\break-system-packages=true' /etc/pip.conf
Anschließend können wir den Python Paket Manager „pip“ installieren:
curl -sSfO 'https://bootstrap.pypa.io/get-pip.py'
sudo python3 get-pip.py
rm get-pip.py
Nach der Installation wird eine Warnung ausgegeben, das Pakte die außerhalb eines „Virtuellen Umfeldes“ installiert werden Paket-Abhängigkeiten schädigen können.
Dies kann hier in diesem Fall ignoriert werden.
Anschließend kann Motioneye in der aktuellsten Version mit dem Python Paketmanager „pip“ installiert und initialisiert werden:
sudo python3 -m pip install --pre motioneye
sudo motioneye_init
Wer auf lieber zu einem offiziellen Stable Release greifen möchte installiert stattdessen auf dem folgenden Weg:
sudo python3 -m pip install motioneye sudo motioneye_init
Dies kann dann, je nach verwendeter Hardware des SBC schon mal einige Kaffee lang dauern. Also Geduld bewahren und abwarten.
Nach der erfolgreichen Installation ist Motioneye bereits im Webinterface erreichbar.
Das Motioneye-Webinterface findet Ihr unter folgender Adresse:
http://[your_ip]:8765/
Beim Erst Start des Webinterface nutzt als Nutzernamen „admin“, und kein Passwort. Das Passwort und den gewünschten Nutzernamen legt Ihr nach dem ersten Einloggen in der linken Seitenleiste fest, und speichert diese mit „Übernehmen“.
Kameras wären hier zwar bereits wählbar, aber noch nicht lauffähig, und Ihr würdet nur ein graues Bild erhalten.
Daher sorgen wir zunächst dafür, das Motioneye zukünftig mit „libcamerify“ startet. „libcamerify“ ist sozusagen der Vermittler zwischen dem alten Legacy-Stack und dem aktuellem Libcamera/rpicam.
Dazu bearbeiten Wir die Systemd-Unit die Motioneye startet:
sudo nano /etc/systemd/system/motioneye.service
Dort suchen Wir die Zeile
ExecStart=/usr/local/bin/meyectl startserver -c /etc/motioneye/motioneye.conf
und ersetzen diese durch das folgende:
ExecStart=/usr/bin/libcamerify /usr/local/bin/meyectl startserver -c /etc/motioneye/motioneye.conf
Anschließend speichern Wir motioneye.service, und starten Motioneye mit den folgenden Kommandos neu:
sudo systemctl daemon-reload
sudo systemctl restart motioneye
Wenn Wir jetzt alles sorgfältig und vollständig durchgeführt haben, startet Motioneye mit Libcamera Unterstützung, und Ihr könnt erfolgreich Eure Kamera im Motioneye Webinterface einbinden und seht ein Bild.
Ein kleiner Wehrmutstropfen aber bleibt bisher, zumindest bei Kameras ohne IR-Filter (NoIR):
Aktuell wird der Weißableich Greyworld nicht unterstützt, zumindest ist mir bisher kein Weg bekannt, diesen in Motioneye/Motion mit libcamerify, bzw. ausserhalb des Legacy-Stacks zu nutzen, da die Kameras hier jetzt als V4L2-Kameras und nicht mehr als MMAL-Kameras, wie beim Legacy-Stack, eingebunden sind.
Damit haben NoIR-Kameras im Tageslicht ein Lila-stichiges Bild. Im Nachtbetrieb fällt das allerdings nicht auf.
![]()

