Digitiale Bilderrahmen für das "InfoFrame"-Projekt

Hallo bolle,
Du brauchst für den Raspberry einen WLAN-Stick, damit der ins Internet kommt. Du brauchst auch keinen Fernseher. Der Raspberry hat einen HDMI-Anschluss, daran muß ein beliebiger Monitor oder TV. Ich habe einen mobilen TV gekauft, weil ich keinen kleinen Monitor mit HDMI-Anschluss gefunden habe. Im Internet gibt es auch User, die einen HDMI-zu-VGA-Adapter nutzen. Am Raspberry funktionieren aber nicht alle Adapter.
Ein externer Server wird nicht mehr benötigt.

Gruß,
Ralf
 
Hi bolle
korrekt. Der Pi ist jetzt Dein Webserver.
Grüße...
 
Der raspberry hat ja auch einen lan Anschluss... Macon daher nicht zwingend notwendig!

Dann freue ich mich auf Bilder und Anleitung..
 
Hallo Bolle,

zunächst musst du mal auf deinem Raspberry Pi die notwendigsten Voraussetzungen schaffen.
Wie du einen eigenen Webserver auf deinem Raspberry Pi installierst ist z.B. hier sehr gut beschrieben.

Joe
 
Hallo,
das ganze läuft jetzt soweit, aber:
Ich starte das Ganze über eine Autostart-Verknüpfung. Dabei wird ein Script gestartet das zuerst das Generieren des Bildes und dann qiv startet:

start.sh:
/var/www/infoframe/pictures/wait.sh
/var/www/infoframe/pictures/infoframe.sh.

wait.sh:
#!/bin/bash
while [ "a"!="b" ]
do
wget "http://raspberrypi/infoframe/index.php" -O /dev/null
done
exit 0

infoframe.sh:
#!/bin/bash
qiv -s -f -i -D 3 /var/www/infoframe/pictures/info.jpg

Das Problem ist, dass qiv das Bild manchmal unvollständig anzeigt oder abstürzt. Das liegt warscheinlich daran, dass es auf die info.jpg zugreift wenn diese noch nicht vollständig gespeichert ist. Man müßte beide Scripte so synchronisieren, das der Bildwechsel von qiv dann passiert, wenn das Bild fertig gespeichert ist.
Ein cron-job scheidet leider aus, da dieser nur minütliche Ausführung zulässt.
Hat jemand noch ein Idee?

Zum Thema Dokumentation:
Am einfachsten wäre es ich würde ein Image meiner SD-Card hochladen und für alle verfügbar machen. Das wäre auch für Anfänger einfacher. Ich brauche dann nur die Stellen beschreiben, an denen individuelle Änderungen notwendig sind. Das Image ist etwa 5,5 GByte groß. Solltet Ihr Interesse haben, sagt welches Image-Format Ihr wollt und auf welchem Hoster ich hochladen soll.

Gruß,
Ralf
 
@bolle

Dann freue ich mich auf Bilder und Anleitung..

wenn Du Rasbian wheezy auf dem PI hast:

die Gruppe www-data sollte bereits existieren, wenn nicht
Code:
groupadd www-data
usermod -a -G www-data www-data

für den apache2
Code:
apt-get install apache2

nun php5:
Code:
apt-get install php5 libapache2-mod-php5 libapache2-mod-perl2 php5-cli php5-common php5-curl php5-dev php5-gd php5-imap php5-ldap php5-mhash php5-mysql php5-odbc php-pear php-apc

MySQL
Code:
apt-get install mysql-server mysql-client php5-mysql

Dann noch das Zend Framework 1.12.3 Full https://packages.zendframework.com/releases/ZendFramework-1.12.3/ZendFramework-1.12.3.tar.gz downloaden und in /var/www/ZendFramework

Die Infoframe Dateien nach /var/www/ und die config.ini anpassen.

Das wars. Jetzt fehlt nur noch die Ausgabe.

Edit:
evtl. sudo vor den apt-get wenn Du nicht root bist und die Datenbank sollte existieren bevor der Infoframe läuft:
mysqladmin --password=secret create "database"

Grüße...
 
Zuletzt bearbeitet:
Großartig!!! Danke!! Die zendframework kann ich ja direkt so von meinem Webserver übernehmen ..das läuft bei mir ja alles schon, nur nicht auf dem Pi!

Aber anscheinend macht es mit der Ausgabe wohl noch Ptobleme, da das Bild teilweise nur bis zur Hälfte geladen wird...

@ralf

Wenn du drin SD hochladen willst, nimm doch mega dazu- kostet nix..

Gruß Bolle
 
Das Problem ist, dass qiv das Bild manchmal unvollständig anzeigt oder abstürzt. Das liegt warscheinlich daran, dass es auf die info.jpg zugreift wenn diese noch nicht vollständig gespeichert ist. Man müßte beide Scripte so synchronisieren, das der Bildwechsel von qiv dann passiert, wenn das Bild fertig gespeichert ist.
Ein cron-job scheidet leider aus, da dieser nur minütliche Ausführung zulässt.
Hat jemand noch ein Idee?

Ich hab mir qiv nicht genauer angeschaut, aber man könnte mal versuchen den qiv aufruf direkt am ende der index.php zu erledigen.
Sowas in der Art:
PHP:
//.....
// send the new  image to the browser
ImageJpeg($im);
//send then new image to path and check if PNG is created
if ( ImageJpeg($im, '/var/www/infoframe/pictures/info.jpg') === TRUE ) {
  exec('qiv -s -f -i -D 3 /var/www/infoframe/pictures/info.jpg');
}

// destroy the reference pointer to the image in memory to free up resources
ImageDestroy($im);
Die Parameter von qiv muss man evtl anpassen, wie gesagt habe mir das nicht weiter angeschaut.
Aber ImageJpeg gibt im Erfolgfall TRUE zurück, also sollte es mal ein Versuch sein.

Dann könnte man das ganze auch über cron laufen lassen mit einer minütlichen Ausführung.
 
Moin

Ein cron-job scheidet leider aus, da dieser nur minütliche Ausführung zulässt.

Kein Grund es nicht zu versuchen, nimm Zwei...
Code:
* * * * * sh your.sh para1 para2
* * * * * ( sleep 30 ; sh your.sh para1 para2 )
 
Das Problem mit den unvollständigen Bildern würde ich anders angehen:

Mit 2 Bildern arbeiten. Ein Bild ist immer vollständig und das andere wird gerade aufgebaut.
Und erst wenn es vollständig aufgebaut ist, dann umbenennen/kopieren in das vollständige Bild.

Abrufen und anzeigen läßt man sich dann natürlich das vollständige Bild ;)
 
Hallo,
die Idee von Spoon3er funktioniert leider nicht. Die index.phpwird dann nicht mehr ausgeführt.
@koyaanisqatsi
Meine Idee mit dem cron-Job funktioniert auch nicht, wie ich jetzt gemerkt habe. Die Zeit die der Raspberry zum generien des Bildes braucht ist leider nicht konstant. Abhängig von Hintergrundprozessen dauert es mal mehr, mal wenioger. Irgenwann greift qiv wieder auf ein unvollständiges Bild zu.
@eisbaerin
Die Idee scheint mir am besten. Man müsste bei jedem Durchlauf jeweils eine von zwei Dateien erzeugen. Aber wie teilt man qiv mit, welche Datei gerade fertig ist? qiv immer mit dem Parameter des aktuellen Bildes zu starten klappt nicht. Da qiv eine kurze Zeit bis zum Anzeigen braucht entstehen Pausen.
Hier der Link zu meinem Infoframe-Verzeichnis (Mega):
Infoframe
Die config.ini müßt Ihr anpassen. Ich habe die entsprechenden Zeilen markiert. In einigen Dateien habe ich Änderungen gemacht (z.B, deutsche Windrichtungen im weather-Plugin). Das ist sicher ziemlich stümperhaft gelöst, besser kann ich's nicht ;)

Heute ist auch der TV gekommen. Sieht echt super aus! Der Rahmen um das LCD-Display ist wesentlich schmaler, als bei den Bilderrahmen. DVBT geht erstaunlich gut (aktive Antenne). Er kann Dateien von USB-Datenträgern abspielen und hat viele Einstellmöglichkeiten (Farbe, Kontrast u. ä., eben wie ein Fernsher). Der Raspberry braucht allerdings ein eigenes Netzteil, der USB-port ist zu schwach. Fotos kommen noch.

Grüße,
Ralf
 
Da hast du mich nicht ganz verstanden. Nochmal im Detail:

qiv zeigt immer die Datei fertig.jpg an
Erzeugt wird immer die Datei aufbau.jpg
Wenn der Aufbau fertig ist (als letzter Befehl, eventuell auch noch mit einer Verzögerung) wird die in diesem Moment fertige aufbau.jpg nach fertig.jpg gemoved oder kopiert.
Das move oder copy geht so schnell, daß praktisch in 0,nix die neue fertig.jpg da ist.
Somit ist immer gewährleistet, daß eine vollständige fertig.jpg zur Anzeige da ist.
 
Hallo eisbaerin,
gute Idee und funktioniert! Ich habe jetzt im qiv-Aufruf den Parameter "-d 3" gegen "-T" geändert. Damit zeigt qiv das Bild bei einer Dateiänderung an. Seit ca. 30 Minuten läuft es ohne Fehler.

Vielen Dank,
Ralf
 
Großartig, dann nur noch das Image auf Mega aktualisieren!,,

Ich bin gespannt...kannst mal ein Bild hochladen....?
 
Hallo,
ich habe mein SDCard-Image auf Mega hochgeladen. Mit Winrar gepackt waren es dann doch "nur" ca. 2 GByte. Es ist in 200 MByte-Teile gepackt. Das Image-Programm für die SDCard ist auch dabei (win32diskimager-v0.9). Infaframe Image für Raspberry Pi.
Ihr müßt die config.ini noch editieren, am besten im Terminal: "sudo nano /var/www/infoframe/confgi.ini". Die entsprechenden Stellen sind mit #### (Markierung danach löschen) markiert. Dann noch WLAN einrichten (Deskto-Icon). Bei Netzwerkanschluß über Kabel entfällt das natürlich. Danach "sudo reboot".
Für Dateioperationen im Terminal habe ich Midnight Commander installiert. Installiert ist auch Myphpadmin um einfach auf den MYSQL-Server zugreifen zu können. Der Screensaver ist deaktiviert. Update sind Stand heute installiert.
User / Passwörter:
Rasbian User: root und pi PW: raspberry
MYSQL: root PW: raspberry
MYPHPADMIN: root PW: raspberry

Viel Erfolg,
Ralf
 
Erst mal vielen vielen Dank für das Image und die Arbeit!!
Werde es bei Gelegenheit testen!!'

Und sollten Probleme auftreten weiß ich , an web ich mich wenden muss...
 
Hallo,
nachdem leider immer noch Abstürze und Bildefehler auftraten habe ich eine andere Möglichkeit gefunden.
qiv schaltet bei einer Slideshow auf das nächste Bild, wenn die Leertaste gedrückt wird. Es gibt für Linux das Programm xmacro, dass Maus- und Tastatureingaben speichern und wiedergeben kann. Ich rufe xmacro nach der Bilderzeugung durch die index.php auf und sende ein Drücken der Leertaste an qiv. Das funktioniert perfekt. Ich habe ein geändertes Image für den RaspberryPi auf Mega hochgeladen: Infoframe auf RaspberryPi. Das ist eine Alternative für Alle, die keinen passenden Fotoframe bekommen und funktioniert mit einem RaspberryPi und einem beliebigen Monitor.

Viel Spaß und Fröhliche Weihnachten,
Ralf
 
Super, vielen Dank für deine Infos und das Image!

Werde die Tage nach den Feiertagen mich mal ran setzen...

Kannst evtl. Mal noch ein Bild machen.

Gruß und schöne Weihnachten
 
Hallo,
hier zwei Fotos vom RaspberryPi und dem TV:
Front.jpgBack.jpg

Gruß,
Ralf
 
Hallo Ralf,
wie ich sehe, hast du den RasPi direkt über den USB-Port des TVs mit Strom versorgt, so daß der kein eigenes Netzteil mehr braucht.
Diese Variante ist genial! :dance:
Hoffentlich hält das der USB-Port des TV auch auf Dauer aus.
Bitte schreibe hier noch ein paar Details zu den technischen Daten des eingesteckten (Mini-) WiFi-Adapters und der Herkunft der beiden Verbindungskabel (USB und HDMI). In dieser "Sonderlänge" habe ich die noch nirgends gesehen.

Joe
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.