Pearl-LCD-Display an der Synology

Status
Für weitere Antworten geschlossen.

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.160
Punkte für Reaktionen
407
Punkte
393
Hallo,
Uuuups, gehackt? da ist mir wohl ein Beitrag flöten gegangen.
Ist denn die ARM-Version von lcd4linux, die ich mit ipkg installieren kann, nicht ok?
wenn die ipkg Version mit DPF arbeiten würde hätte hier niemand den Compiler angeworfen.

Gruß Götz
 

adahmen

Benutzer
Mitglied seit
12. Okt 2009
Beiträge
561
Punkte für Reaktionen
11
Punkte
38
Inspiriert von diesem Thread - hier mal mein Zwischenergebnis

Die Disktemperatur will nicht. Muss ich wohl dann auch so machen wie oben beschrieben...

Grüße
TheGulOfDedra

Kannst Du auch Deine config mal hochladen ?
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.826
Punkte für Reaktionen
3.769
Punkte
468
Ich spiel momentan etwas mit der lcd4linux.conf von Goetz herum.
Es gibt einige Dinge, die darf ich nicht einschalten, sonst aktualisiert das Display nach wenigen Sekunden nicht mehr.

Momentan läuft es mit
Code:
...
Layout Dockstar {
    Row02.Col01 'System'
    Row03.Col01 'Time'
    Row05.Col02 'Busy'
    Row06.Col02 'BusyBar'
    Row08.Col02 'Load'
    Row09.Col02 'LoadBar'
    Row11.Col02 'Disk'
    Row12.Col02 'DiskBar'
    Row14.Col02 'Eth0'
    Row15.Col02 'Eth0Bar'

    Row05.Col28 'MemoryTitle'
    Row06.Col29 'MemoryTotal'
    Row07.Col29 'MemoryFree'
    Row08.Col29 'MemorySwapped'
    Row10.Col28 'HDDTempTitle'
##    Row11.Col29 'HDDTemp1'
    Row11.Col29 'na'
    Row13.Col28 'FSSpaceTitle'
##    Row14.Col29 'FSSpace1'
##    Row15.Col29 'FSSpace2'

    Row17.Col02 'ServicesTitle'
#    Row18.Col02 'BindDNSStatus'
#    Row19.Col02 'DHCPStatus'
#    Row20.Col02 'IWatchStatus'
#    Row21.Col02 'LighttpdStatus'
#    Row22.Col02 'MiniDLNAStatus'
#    Row23.Col02 'PostfixStatus'
#    Row24.Col02 'ProFTPStatus'
#    Row18.Col29 'SambaStatusDS'
#    Row19.Col29 'SSHStatusDS'

    Row25.Col02 'SyslogTitle'
##    Row26.Col02 'Syslog1'
##    Row27.Col02 'Syslog2'
##    Row28.Col02 'Syslog3'
##    Row29.Col02 'Syslog4'

    Row30.Col01 'Debug'

##    Timer1 'SetSyslogMsg'

#    Layer 2 {
#        X1.Y1 'BgndDS'
#    }

}
Wenn ich z.B. die "Timer1"-Zeile reinnehme oder auch nur "Syslog1" um "Dummy" auszugeben, wird das einmal angezeigt, aber die Anzeige friert nach wenigen Sekunden ein. Gleicher Effekt bei "FSSpace1/2". Jemand eine Idee?

Gruß Benares
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
2
Punkte
84
Den Punkt ersetzten, also den absoluten Pfad ab / bis zum "install-sh".
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.160
Punkte für Reaktionen
407
Punkte
393
Hallo,
@Benares
hast Du das binary aus Beitrag #86 genommen? Ohne den Patch hatte ich auch schnell ein eingefrorenes Display.

Gruß Götz
 

OhJames

Benutzer
Mitglied seit
16. Jan 2012
Beiträge
131
Punkte für Reaktionen
0
Punkte
0
Den Punkt ersetzten, also den absoluten Pfad ab / bis zum "install-sh".
Danke!

Ich hab ein problem beim hacken des gerätes jetzt... und zwar hab ichs nach der Anleitung gemacht, Channel 1 wird grün, ich hab die firmware ausgewählt.
Drück ich jetzt auf "Execute", kommt ne Messagebox mit ner unleserlicher Fehlermeldung.
Klick ich dort auf ok, kommen folgende Fehlermeldung in der Listbox:

Please wait for checking Flash ID
FLASH info is Cmd-9f : ID irgendwas
FLASH info is Cmd-ab : ID irgendwad
FLASH info is Cmd-90 : ID irgendwas
Can't find the flash info, please add its info to the flash library according to the flash ID

Was mach ich falsch?


[Lösung ist hier]
http://www.i-have-a-dreambox.com/wbb2/thread.php?threadid=164408
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.826
Punkte für Reaktionen
3.769
Punkte
468

OhJames

Benutzer
Mitglied seit
16. Jan 2012
Beiträge
131
Punkte für Reaktionen
0
Punkte
0
Juheee es läuft aufm DS111, vielen Dank für eure Hilfe!

Noch n'kleines Problemchen hab ich. Wenn ich unter Windows 7 die Config verändere, abspeichere und dann auf die DS kopiere, geht die Config-datei nicht, da hinter jeder Zeile ein "^M" gemacht wird.
Wenn ich die dann mit vi manuell rauslösche, geht die Datei wieder.

Hab Notepad++ benützt auf Windows 7, dachte dass der die korrekte linux-konforme dateien macht.

Was mach ich falsch?
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.826
Punkte für Reaktionen
3.769
Punkte
468
Mit notepad++ liegst du richtig. Schau mal unter Bearbeiten, Zeilenende, "Konvertiere zu Unix".

Gruß Benares
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.160
Punkte für Reaktionen
407
Punkte
393
Hallo,
Rich (BBCode):
t=`/usr/syno/bin/smartctl -A /dev/$disk | /bin/grep Temperature_Celsius | /usr/bin/awk '{print $10}'`
da muß ich bei smartctl bei der DS411+II mit DSM 4.0 Beta noch ein -d ata einfügen sonst gibst Segmentation fault.

Gruß Götz
 

TheGulOfDedra

Benutzer
Mitglied seit
26. Mai 2009
Beiträge
45
Punkte für Reaktionen
0
Punkte
0

OhJames

Benutzer
Mitglied seit
16. Jan 2012
Beiträge
131
Punkte für Reaktionen
0
Punkte
0
Herzlichen Dank!

Wie kann man eigentlich lcd4linux beenden und neustarten?
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.160
Punkte für Reaktionen
407
Punkte
393
Hallo,
killall lcd4linux
lcd4linux

Gruß Götz
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.826
Punkte für Reaktionen
3.769
Punkte
468
t=`/usr/syno/bin/smartctl -A /dev/$disk | /bin/grep Temperature_Celsius | /usr/bin/awk '{print $10}'`
Danke. Ich hab das mal so eingebaut:
Code:
...
Widget HDDTempTitle {
    class 'Text'
    expression 'Disk Temperature'
    width width050
    align 'L'
    update 0
}

Widget HDDTemp1 { 
    class 'Text' 
    expression exec('/usr/syno/bin/smartctl -A -d ata /dev/sda | /bin/grep Temperature_Celsius | /usr/bin/awk \'{print $10}\'', 10 * second)
    precision 1
    prefix 'sda: '
    postfix ' °C'
    align 'R' 
    update 10 * second 
}

Widget HDDTemp2 { 
    class 'Text' 
    expression exec('/usr/syno/bin/smartctl -A -d ata /dev/sdb | /bin/grep Temperature_Celsius | /usr/bin/awk \'{print $10}\'', 10 * second)
    precision 1
    prefix 'sdb: '
    postfix ' °C'
    align 'R' 
    update 10 * second 
}
...
    Row10.Col28 'HDDTempTitle'
    Row11.Col29 'HDDTemp1'
    Row11.Col40 'HDDTemp2'
...
Sieht m.E. ganz gut aus.
Bald belastet das Display die CPU mehr als der ganze Rest :D

Gruß Benares
 
Zuletzt bearbeitet:

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.826
Punkte für Reaktionen
3.769
Punkte
468
Hier mal ein Screenshot vom aktuellen Stand und die zugehörige lcd4linux.conf.

Gruß Benares
 

Anhänge

  • IMG_4662.jpg
    IMG_4662.jpg
    174,1 KB · Aufrufe: 359
  • lcd4linux.conf.zip.spk
    2,8 KB · Aufrufe: 34

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.826
Punkte für Reaktionen
3.769
Punkte
468
LCD als Digital Photo Frame für die DS

Wer sein Display wieder der urprünglichen Aufgabe als digitaler Bilderrahmen für die Bilder auf der DS zuführen will, kann es mal damit versuchen.
Funktioniert noch nicht wirklich so richtig, zuweilen überholen sich die Prozesse etwas, aber als Idee m.E. brauchbar.
GetImages bitte auf die eigenen Gegebenheiten anpassen, am Besten erstmal klein anfangen.
Schade, dass man pro Widget scheinbar nur eine Expression verwenden kann. Für Verbesserungsvorschläge wäre ich dankbar.

Gruß Benares

lcd4linux.conf
Code:
Layout 'PictureFrame'

Display 'DPF'

Variables {
    # Ticks:
    second 1000
    minute 60 * second
    
    # Standard Dimensions:
    linesize 53	# max line length, for status lines etc.
    width100 51	# full width after padding (border)
    width050 24	# 1/2 of full width
    width033 17	# 1/3 of full width
    width025 12	# 1/4 of full width
    width010  5	# 1/10 of full width

    # Colors:
    black     '000000'
    white     'ffffff'
    red       'ff0000'
    darkblue  '000066'
    lightgray 'b2b2b2'
    darkgray  '191919'
    barcolor0 '5f5fff'
    barcolor1 'ff5f5c'

    # Locals:
    ImageIndex 0
    NumImages 0
    ActImage ''
    NextImage ''
}

Display dpf {
   Driver 'DPF'
   Port 'usb0'
#   Font '12x16'
   Font '6x8'
   Foreground white
   Background darkblue
   Basecolor darkblue
}

Widget GetImages {
    class 'Timer'
    expression NumImages = exec('ls -R /volume1/photo/*/*.jpg > /tmp/Images && cat /tmp/Images | wc -l', 5000)
    active 1
    update 0
}

Widget ChangeImage {
    class 'Timer'
    expression NextImage = file::readline('/tmp/Images',ImageIndex = ImageIndex>=NumImages?1:ImageIndex+1)
    active 1
    update 60000
}

Widget ConvertImage {
    class 'Timer'
    expression ActImage = NextImage ne ActImage ? exec('cat "'.NextImage.'" | /usr/syno/bin/convert -resize 320x240 jpg:- /tmp/IMGtemp.png && mv /tmp/IMGtemp.png /tmp/IMG.png && echo "'.NextImage.'"', 60000) : ActImage
    active 1
    update 0
}

Widget ShowImage {
    class 'Image'
    file '/tmp/IMG.png'
    update 10000
    reload 1
    inverted 0
    visible 1
}

Widget ImageInfo {
    class 'Text' 
    expression ActImage eq NextImage ? ActImage.'('.ImageIndex.'/'.NumImages.')' : 'Loading '.NextImage 
    width width100
    align 'C' 
    update 1000 
}

Layout PictureFrame {
    Timer1 'GetImages'
    Timer2 'ChangeImage'
    Timer3 'ConvertImage'
    Row30.Col02 'ImageInfo'
    Layer 2 {
        X1.Y1 'ShowImage'
    }
}
 

thedude

Benutzer
Mitglied seit
30. Nov 2009
Beiträge
2.244
Punkte für Reaktionen
2
Punkte
84
Hallo!

Das ist alles sehr spannend. Irgendwie ging dieser Thread total an mir vorbei. Mich würde mal interessieren ob es irgendwie möglich wäre dieses Display (order ein adenres, ggf. natürlich mit zusätzlicher Hardware) statt per USB über Ethernet anzubinden so das man es orts ungebunden von der DS aufstellen kann. z.B. am Schreibtisch, wenn die DS im Flur steht. Oder sogar über VPN etc. etc. was meint ihr, gibt es da wohl eine Möglichkeit?

gruss
dude
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat