Hatte schon lange das Problem, dass meine WLAN Webcam Qualitativ schlechte Aufnahmen lieferte. Gleichzeitig hatte ich gute Erfahrungen mit den USB Kameras von Logitech gemacht, die aber aufgrund der Entfernung zum Webserver Probleme mit der Verbindungsstabilität hatten (USB-RJ45 Bridge).
Vor 2 Tagen kam mir dann die Idee einen alten Raspi mit WLAN Adapter zu verwenden um zusammen mit der alten USB Webcam einen Webcam Server zu bauen, der mir die Bilder einfach auf meinen Webserver per WLAN überträgt.
Der Motion-Webcam Service war gleich eingerichtet und mit ein paar Scripts dann auch die Verbindung zum PC geschafft.
Kosten:
35€ Raspi
8€ Gehäuse
7€ Netzteil
8€ WLAN Edimax Adapter
0€ alte SD Karte
0€ alte USB Webcam
-----------------------------
58€
Verwendet wurde
ein Raspberry PI mit Raspian Wheezy
Die nötige Software:
Webcam USB am PI
> apt-get install motion
> nano /etc/motion/motion.conf
This is quite a large conf file but the points you need to edit are:
DAEMON = OFF (change to ON)
Webcam_localhost = ON (Change to OFF)
Ausserdem…
zusätzlich sinnvoll zum experimentieren
> apt-get install fswebcam
> fswebcam image.jpg
siehe http://www.raspberrypi.org/documentation/usage/webcams/
bzw. http://www.instructables.com/id/Raspberry-Pi-remote-webcam/
Installation der motion software:
- 1. Zuerst die software installieren und die motion.conf anpassen
- 2. Am Notebook die Freigabe /livecam freigeben
- 3. Am PI autofs einrichten siehe nächsten Abschnitt und Laufwerk mounten als /notebook/livecam
- 4. Im Verzeichnis /etc/motion die Datei webcam.py anlegen und Ausführungsrechte geben
Logfiles landen in /var/log/webcam.log (tail –fn -15 /var/log/webcam.log) - 5. Die Datei webcam.sh anlegen (startet den Service) und Ausführungsrechte geben
- 6. Danach im Verzeichnis /etc/init.d die Datei webcam anlegen und ausführungsrechte geben
> chmod +x webcam - 7. Mit
> update-rc.d webcam defaults
im Runlevel eintragen damit automatisch gestartet
Windows Laufwerk am PI mounten
- 1. apt-get install autofs
- 2. nano /etc/auto.master
als einzige Zeile eintragen:
"/notebook /etc/auto.notebook --ghost --timeout=20" - 3. nano /etc/auto.notebook
eintragen:
"livecam -fstype=cifs,username=winuser,password=xxxx ://192.168.2.108/livecam"
Das Ergebnis siehst du auf meiner Webcam!
Abbruch der WLAN Verbindung nach einigen Stunden
Leider passiert es immer wieder, dass der PI die WLAN Verbindung verliert. Bei mir auch deshalb, weil der WLan Router über Nacht abgeschaltet wird und auch das Notebook in den Standby fährt. Wenn dann alles wieder aktiv wird baut der PI die WLan Verbindung nichtmehr korrekt auf.
Wenn Ihr auf Eurem pi
> ps aux | grep ifplugd
eingebt, müßte folgende Ausgabe erscheinen:
root 1614 0.0 0.0 1748 492 ? S 17:35 0:04 /usr/sbin/ifplugd -i eth0 -q -f -u0 -d10 -w -I
root 1619 0.0 0.1 1748 528 ? S 17:35 0:06 /usr/sbin/ifplugd -i wlan0 -q -f -u0 -d10 -w -I
root 1625 0.0 0.1 1748 504 ? S 17:35 0:01 /usr/sbin/ifplugd -i lo -q -f -u0 -d10 -w -I
pi 2797 1.0 0.1 3548 868 pts/0 S+ 20:12 0:00 grep --color=auto ifplugd
Für die Interfaces lo,eth0 und wlan0 ist damit eine Statusüberwachung aktiv. Das Problem ist nun, dass ein Verbindungsabbruch zwar erkannt wird, allerdings nicht zyklisch versucht wird, die Verbindung wieder aufzubauen.
Die Aktionen, die bei einem Statuswechsel einer Verbindung ausgeführt werden, sind in /etc/ifplugd/action.d/ifupdown definiert.
Dieses Script ist einfach durch eine Variante zu ersetzen, die einen zyklischen Wiederverbindungaufbau vornimmt. Ein solches Script findet Ihr unter /etc/wpa_supplicant/ifupdown.sh.
Somit einfach das alte Script sichern und das andere Script aktivieren:
> cd /etc/ifplugd/action.d
> mv ifupdown ifupdown~
> ln -s ../../wpa_supplicant/ifupdown.sh ifupdown
That’s it. Danach einfach mal Euren Router aus- und wieder einschalten; Die Verbindung sollte dann automatisch wiederhergestellt werden.