Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
linux:fhem:bilderrahmen [07.01.2016 12:48] marc [Fotodatei generieren] |
linux:fhem:bilderrahmen [08.01.2016 07:23] (aktuell) marc |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Bilderrahmen als Display für fhem@raspberry ====== | + | ====== Daten aus fhem holen ====== |
- | + | ||
- | + | ||
- | Siehe FHEM-Wiki http:// | + | |
- | + | ||
- | ===== Installation ===== | + | |
- | + | ||
- | Die Installation kann auf dem raspberry Pi selbst erfolgen oder auf einem dedizierten Rechner. Bei der Installation auf einem raspberry pi (2) sind mögliche Auswirkungen auf die Perfomance zu berücksichtigen. | + | |
- | + | ||
- | Für diesen Fall benötigte Software: | + | |
- | + | ||
- | * socat | + | |
- | * ImageMagick | + | |
- | * lcd4linux | + | |
- | + | ||
- | lcd4linux sollte beim Hochfahren des Raspberry Pi automatisch starten. | + | |
- | + | ||
- | ===== Daten aus fhem holen ===== | + | |
- | + | ||
- | In /opt/fhem wird zunächst die Datei getFHEM.sh angelegt und den individuellen Ansprüchen nach modifiziert: | + | |
#!/bin/bash | #!/bin/bash | ||
Zeile 42: | Zeile 23: | ||
everb=' | everb=' | ||
gverb=' | gverb=' | ||
- | FHEM=`echo -e " | + | FHEM=`echo -e " |
# | # | ||
#--isolate separate values | #--isolate separate values | ||
Zeile 65: | Zeile 46: | ||
echo " | echo " | ||
fi | fi | ||
- | # | ||
- | #--create bar graphs | ||
- | ./ | ||
- | ./ | ||
- | ./ | ||
- | ./ | ||
- | ./ | ||
- | ./ | ||
- | |||
- | |||
- | Diese Datei wird nun mit | ||
- | |||
- | crontab -e | ||
- | |||
- | in die Tabelle des cron-Dämons eingetragen (Ausführung hier minütlich): | ||
- | |||
- | * * * * / | ||
- | |||
- | ===== lcd4linux konfigurieren ===== | ||
- | |||
- | / | ||
- | |||
- | Display dpf { | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | } | ||
- | Variables { | ||
- | tick 1000 | ||
- | dick 2000 | ||
- | pick 10000 | ||
- | | ||
- | | ||
- | } | ||
- | Widget Foto { | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | } | ||
- | Widget Alarm { | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | } | ||
- | Widget Solar { | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | } | ||
- | Widget Strom { | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | } | ||
- | Widget Gas { | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | Widget Temp { | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | } | ||
- | Widget Date { | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | } | ||
- | ##################################################################### | ||
- | Display ' | ||
- | ##################################################################### | ||
- | Layout Normal { | ||
- | # X/Y exchanged !! | ||
- | Layer 1 { | ||
- | X0.Y0 ' | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | } | ||
- | } | ||
- | |||
- | |||
- | |||
- | ===== Bild generieren ===== | ||
- | |||
- | ==== Fotodatei generieren ==== | ||
- | |||
- | Erzeugung eines PNG-Files aus einer aus einem Ordner zufällig ausgewählten anderen Datei. Dazu wird im Verzeichnis /opt/fhem die Datei createPic.sh angelegt: | ||
- | |||
- | #!/bin/bash | ||
- | # | ||
- | # | ||
- | # | ||
- | #-- Directory Containing Pictures | ||
- | DIR="/ | ||
- | # | ||
- | # Command to Select a random jpg file from directory | ||
- | pic=$(ls $DIR | shuf -n1) | ||
- | # | ||
- | #-- Correct the size | ||
- | convert $DIR/$pic -resize 600x450 back.png | ||
- | #convert $DIR/$pic -rotate -90 -resize 450x600 back.png | ||
- | |||
- | ==== Datumsanzeige generieren ==== | ||
- | |||
- | Erzeugung eines Bildes mit dem gegenwärtigen Datum und der jetzigen Zeit. Dazu wird im Verzeichnis /opt/fhem die Datei createDate.sh angelegt: | ||
- | |||
- | |||
- | #!/bin/bash | ||
- | # | ||
- | # | ||
- | # | ||
- | #--date pieces | ||
- | ddate=`date +%a%_3e.%_4b%_5Y` | ||
- | dtime=`date +%k:%M` | ||
- | # | ||
- | convert -size 320x240 canvas:none -stroke snow4 -size 1x90 -tile gradient: | ||
- | \( +clone -background snow4 -shadow 80x3+3+3 \) \ | ||
- | +swap -background none -layers merge \ | ||
- | \( +size -font Helvetica \ | ||
- | | ||
- | \( +clone -background firebrick3 -shadow 80x3+3+3 \) \ | ||
- | +swap -background none -layers merge \) \ | ||
- | | ||
- | \( +size -font Helvetica \ | ||
- | | ||
- | \( +clone -background slateblue4 -shadow 80x1+2+2 \) \ | ||
- | +swap -background none -layers merge \) \ | ||
- | | ||
- | | ||
- | | ||
- | # | ||
- | #-- correct the size | ||
- | convert b_date.png -resize 200x150 date.png | ||
- | |||
- | ==== Temperaturanzeige generieren ==== | ||
- | |||
- | |||
- | ==== (Balkendiagramme generieren) ==== | ||
- | |||
- | |||
- | ==== (Alarmbild generieren) ==== |