Das Linux Utility gphoto2 und deren Bibliothek ist quasi die Standard Software um Bilder und Videos von der Digitalkamera herunterzuladen. Das Programm unterstützt sehr viele am Markt erhältliche Kameras und wird ständig weiterentwickelt. Die meisten Anwender benutzen die Software allerdings nur über die USB-Schnittstelle um die Daten von der Kamera oder einem Kartenleser herunterzuladen.

Viele Anwender wissen garnicht, dass man mit gphoto2 auch über eine WLAN Verbindung nutzen kann. In diesem Artikel möchte ich euch am Beisipel einer Canon 5D Mark IV und einen Raspberry Pi 3B zeigen wie man die WLAN Verbindung aufbaut, Infos von der Kamera bekommt und die Bilder herunterladen kann.

Zur Datenübertragung muss eure Kamera natürlich WLAN integriert haben, die Kamera muss von gphoto2 unterstützt werden und Ihr müsst natütlich gphoto2 auf eurem Linux PC installiert haben. Wenn möglich solltet Ihr die neueste Version von gphoto2 installieren.

Bei eine Ubuntu Distribution könnt Ihr das Ulitity einfach mit dem Befehl sudo apt-get install gphoto2 installieren. Die notwendigen Bibliotheken werden automatisch mit installiert. Wer die neueste Version selber kompilieren und installieren möchte, dem empfehle ich das gphoto-updater Skript zu verwenden. Auf meinem Raspberry Pi 3B hat das sehr gut funktioniert und man kann sehr gut die Software auf dem aktuellsten Stand halten. Bei mir hat die WLAN Verbindung erst mit der neuesten gphoto2 Version (2.5.23) funktioniert!

 

Ich möchte euch die folgenden Arbeisschitte an Hand der Canon EOS 5D Mark IV und einem Raspberry Pi 3B zeigen:

  1. Ports prüfen
  2. WLAN Verbindungsbaufbau
  3. WLAN Verbindung prüfen
  4. IP-Adresse der Kamera ermitteln
  5. Erreichbarkeit der Kamera überprüfen
  6. Infos zur Kamera anzeigen lassen
  7. Infos zum Speicher der Kamera anzeigen lassen
  8. Fotos/Videos über die WLAN Verbindung herunterladen

 

WLAN Port prüfen

Als erst Prüfen wir ob gphoto2 auf ihrem PC WLAN fähig ist, durch Eingabe von:

gphoto2 --list-ports

Wenn der PC über einen funktionsfähiges WLAN verfügt, dann sollte in der Liste ptpip: PTP/IP Connection auftauchen.

 

WLAN Verbindung aufbauen

Der Verbindungsaufbau ist abhänig von der Kamera, daher ist dies nur als Beispiel zu sehen. Bei WLAN fähigen Canon EOS Digitalkameras sollte es aber sehr ähnlich funktionieren:

Nach dem einstalten der Kamera sollten Sie als erstes den Ladezustand der Batterie kontrollieren.

 

Wechseln Sie in das Werkzeug Menü der Kamera und suchen die Kommunikationseinstellungen. Bei einigen Canon Kameras kann der Menüpunkt auch Wireless-Kommunikseinst. heißen.

 

Bei der Canon 5D Mark IV kommt jetzt noch ein zwischen Menü. Wählen Sie Integrierte Wireless-Einstell.

 

Aktivieren Sie die WLAN funktion

 

Wechsen Sie zum Menüpunkt WLAN-Funktion

 

Wählen Sie mit Fernsteuerung (EOS Utility) verbinden aus

 

Gehen Sie auf Einst. wählen und wählen ggf. ein Einstellung aus

 

Ich lege in SET2 eine neue Verbindung für den Raspberry PI an.

 

Wählen Sie Einfache Verbindung aus

 

Es erscheint jetzt die SSID und das Passwort. Beides sollten Sie sich notieren, da wir es bei Raspberry Pi benötigen.

 

Wir wechseln jetzt zum Raspberry PI. Nach der Aktivierung vom WLAN sollte jetzt die Kamera auftauchen.

 

Klicken Sie auf die Kamera und geben das Passwort das am Bildschirm der Kamera angezeigt wird ein.

 

Wenn die Verbindung aufgebaut werden konnte, dann erscheint beim Raspberry Pi ein grüner Haken.

 

 

WLAN Verbindung prüfen

Die Verbindung zwischen der Kamera und dem PC kann schnell gestört sein z.B. wenn die Kamera in den Schlafmodus geht, die Batterie leer ist usw.. Es ist daher gut die Verbindung am PC bei Problemen zu prüfen. Sie können die Verbindung prüfen durch Eingabe von:

iwgetid

Es sollte jetzt die Kamera aufgelistet werden, wenn nicht, dann besteht keine Verbindung mehr. Prüfen Sie, ob die Kamera im Schlafmodus ist, ggf. Kamera aus und wieder einschalten.
PS: Solte die WLAN Verbindung zu schnell abbrechen, dann deaktivieren oder verlängern Sie die Abschaltautomatik der Kamera.

 

IP-Adresse der Kamera ermitteln

Damit gphoto2 mit der Kamera komunizieren kann, wird die IP-Adresse der Kamera benötigt. Man kann die IP-Adresse an der Kamera nachsehen, aber einfacher ist die bei einer bestehenden Verbindung abzurufen durch Eingabe von:

route | grep wlan0 | awk -F";" 'NR == 1 { print $1}' | awk '{print $2}'

 

Notieren Sie sich die IP-Adresse, Sie wird in den nächsten schritten benötigt. Sollte keine IP-Adresse ausgegeben wird besteht eventuell keine Verbindung mehr bzw. ggf. auch mal nur mit den route Befehl versuchen.

 

Erreichbarkeit der Kamera überprüfen

Bei mit gibt es beim Ausführen der gphoto2 Befehle oft Probleme, obwohl alles richtig eingegeben wurde. Es kommt dann eine Fehlermeldung dass die Kamera nicht erreichbar ist. Es ist daher sinnvoll die Erreichbarkeit der Kamera ggf. zu prüfen. Wir setzen dazu einen Ping ab. Sie müssen natürlich die IP-Adresse Ihrer Kamera einsetzen.

ping -c 1 192.168.1.2

 

Infos zur Kamera anzeigen lassen

Wir möchten uns jetzt Informationen zur Kamera anzeigen lassen, dass erfolgt mit dem Befehl:

gphoto2 --port ptpip:192.168.1.2 --summary

Sollte der Befhl fehlschlagen überprüfen Sie bitte die Erreichbarkeit der Kamera ggf. auch die WLAN Verbindung. Eventuell den Befehl einfach wiederholen.

 

Infos zum Speicher der Kamera anzeigen lassen

Jetzt können Sie sich auch noch Infos zum Flashspeicher anzeigen lassen durch:

gphoto2 --port ptpip:192.168.1.2 --storage-info

bzw.

gphoto2 --port ptpip:192.168.1.2 --list-files

Sollte der Befhl fehlschlagen überprüfen Sie bitte die Erreichbarkeit der Kamera ggf. auch die WLAN Verbindung. Eventuell den Befehl einfach wiederholen.

 

Fotos/Videos über die WLAN Verbindung herunterladen

Sie können mit gphoto2 auch über WLAN die Fotos und kleine Videos herunterladen. Bitte beachten Sie, dass große Videos mit gphoto2 nicht heruntergeladen werden können, da gphoto2 die Daten von der Kamera in den Arbeitsspeicher kopiert und erst, wenn die vollständig sein auf die SSD bzw. Festplatte schreibt. Zum Download über WLAN verwenden Sie den Befehl:

gphoto2 --port ptpip:192.168.1.2 --get-all-files

Mit der Option --new hinter dem --get-all-files werden nur die Daten auf die Platte kopiert, die noch nicht vorhanden sind, also eine art inkrementelles Backup. Sollte der Befhl fehlschlagen überprüfen Sie bitte die Erreichbarkeit der Kamera ggf. auch die WLAN Verbindung. Eventuell den Befehl einfach wiederholen.

 

Bash Skript für eine gphoto2 WLAN Verbindung

Einfach WLAN Verbindung aufbauen und Skript aufrufen. Bitte ändern Sie ggf. das Zielverzeichnis (target_directory). Es wird zuerst die WLAN Verbindung geprüft, dann die IP Adresse ermittelt, dann Infos zur Kamera und dem Speicher angezeigt. Zum Schluß werden Sie gefragt, ob sie alle neuen Bilder herunterladen möchten.

 

#!/bin/bash

# gphoto2 wlan download script
# GPL2 licence

# Wechsel in das Verzeichnis wo gphoto die Daten abspeichern soll
target_directory="/home/pi/Pictures"
if [ -d "$target_directory" ];then
cd "$target_directory"
else
echo "Das Zielverzeichnis existiert nicht."
exit
fi

 

#WLAN Verbindung prüfen
count=0
until iwgetid > /dev/null
do
sleep 1s
count=`expr $count + 1`
if [ $count -eq "60" ]; then
echo "Es wurde keine WLAN Verbindung gefunden."
exit
fi
done
wlan_connection=$(iwgetid | cut -d \" -f2)
echo "WLAN Verbindung zu $wlan_connection gefunden"

 

#IP Adresse der Kamera ermitteln
count=0
until route > /dev/null
do
sleep 1s
count=`expr $count + 1`
if [ $count -eq "60" ]; then
echo "Es wurde keine IP Adresse der Kamera gefunden"
exit
fi
done
camera_ip_adress=$(route | grep wlan0 | awk -F";" 'NR == 1 { print $1}' | awk '{print $2}')
echo "IP Adresse der Kamera ist $camera_ip_adress"

 

#Zusammerfassung der Kamera anzeigen:
until ping -c 1 $camera_ip_adress > /dev/null
do
sleep 1s
if [ $count -eq "60" ]; then
echo "WLAN Verbindung ist abgebrochen"
exit
fi
done
gphoto2 --port ptpip:$camera_ip_adress --summary

 

# Speicher Infos
until ping -c 1 $camera_ip_adress > /dev/null
do
sleep 1s
if [ $count -eq "60" ]; then
echo "WLAN Verbindung ist abgebrochen"
exit
fi
done
gphoto2 --port ptpip:$camera_ip_adress --storage-info

 

#Dateien auf der SD-Karte in der Kamera auflisten
until ping -c 1 $camera_ip_adress > /dev/null
do
sleep 1s
if [ $count -eq "60" ]; then
echo "WLAN Verbindung ist abgebrochen"
exit
fi
done
gphoto2 --port ptpip:$camera_ip_adress --list-files

#Alle Fotos und Video herunterladen
echo -e "\n"
read -p "Möchten Sie alle neuen Fotos herunterladen? (y/n) " name

if [ "$name" == "y" ]
then
until ping -c 1 $camera_ip_adress > /dev/null
do
sleep 1s
if [ $count -eq "60" ]; then
echo "WLAN Verbindung ist abgebrochen"
exit
fi
done
gphoto2 --port ptpip:$camera_ip_adress --get-all-files --new
if [ "$?" -eq "0" ]; then
echo "Alle neuen Fotos wurden erfolgreich heruntergeladen"
else
echo "Beim Herunterladen der Fotos ist ein Fehler aufgetreten"
fi

else
exit
fi

Joomla templates by a4joomla