Erfahrungsbericht NAS-Synology DS212+ hier gehts lang!
Update 05.10.2012: Neues Modell verfügbar -> Synology Disk Station DS213+ – NAS-Server DS213+
Update: 31.07.2012 Akualisierung des Beitrages: Zwei Seriell-2-USB-Adapter an der Synology DS212+
Eigentlich schreibe ich jetzt den zweiten Blog-Beitrag vor dem Ersten. Kurze Einleitung: Ich habe vor kurzen eine neue NAS gekauft, eine Synology NAS DS212+ NAS-Server (2GHz, 512MB RAM, SATA II, 2-Bay, 2 x USB 3.0). Einiges teurer als die Buffalo-Linkstation (Beiträge: hier und hier), welche ich fast ein Jahr in Gebrauch hatte.
Über die vielen Vorteile der Synology DS212+ schreibe ich in einem späteren Artikel.
Da ich in der neuen NAS einen schnellen Prozessor (2GHz, 512MByte-RAM) habe und sich die NAS nach meiner Erfahrung sowieso zu 95% langweilt, habe ich beschlossen, die schöne schwarze Kiste auch für andere Zwecke als nur zur Datenspeicherung zu benutzen. Die Synologie DS212+ bietet mit der neuen Oberfläche DSM 4.0 noch einige Tools an, wie Camera Surveillance /Überwachungscamera – auch mit der hootoo und EasyN, Downloader, eMail-Client, iCloud usw.
Doch nun zum eigentlichen Thema: Temperaturmessung
Aus den letzen Projekten besitze ich noch einige Temperaturfühler DS18S20 und eine Handvoll Elekronik, welche ich mir damals für unter 10 Euro bei amazon.de (10 x DS18B20 Digitale Temperaturfühler)
gekauft habe und selber zusammengelötet habe. Die Elektronik passte in einem handelsüblichen DSUB9-Adapter. Um von der DSUB9 (serielle Schnittstelle) zum USB-Anschluss zu kommen, musste noch ein Adapter gekauft werden, nämlich diesen Digitus DA-70156 USB Seriell Adapter USB 2.0. In diesem Adapter werkelt der pl2303-Chip, der auch passend in das System installiert werden muss.
Zum Zusammenbau dieser Schaltung schreibe ich jetzt nichts, dafür gibt es viele Websites.
Interessant ist die Frage, wie man den (oder die) Temperaturfühler an die Synology DS212+ anschließt.
Das ist leider etwas kompliziert, weil dazu softwaremäßig einige Vorbereitungsmaßnahmen erforderlich sind.
Gehen wir aber mal zusammen im Schnelldurchlauf die einzelnen Schritte durch.
- putty Konsole konfigurieren / aktivieren
- IPKG – installieren
- IPKG – sichern damit beim Neustart IPKG nicht wieder weg ist
- Digitemp installieren
- Treiber für Seriell->USB-Adapter installieren
- Treiber testen
- Schaltung mit Seriell->USB-Adapter verbinden
- Software mit der Schnittstelle und den Temperaturfühler-Modul testen.
putty Konsole Konfigurieren / aktivieren
Um alles installieren zu können, benötigt ihr zunächst den Zugriff auf die Konsole. Die sieht so aus wie die langweilige DOS-Box aus den 80igern. Einen SSH-Zugriff erhaltet ihr wenn in der Administrations-Oberfläche der Synology (DSM 4.0) in der Systemsteuerung nach dem Symbol Terminal sucht und dort SSH-Dienst aktivieren klickt.
Anschließend „installiert“ man putty und gibt dort die IP-Adresse der NAS ein (SSH-Zugriff). Es meldet sich dann die NAS mit Benutzername / Passwort: Als Benutzername gebt ihr root ein (!) und euer Passwort von der NAS. Und die NAS meldet sich mit DiskStation>
IPKG installieren.
Diese Klitze-Kleine-Verwaltungspaket, siehe Wikipedia muss zunächst auf die Synology installiert werden. Dafür gibt es einen Wiki-Beitrag von Synology, welchen ihr durcharbeiten solltet. Wichtig: Ihr müsst das passende IPKG-Paket zum Prozessor installieren. Für die DS212+ heißt dieser Kirkwood-Marvell (-> Übersicht Synology-Prozessoren).
IPKG – sichern damit beim Neustart IPKG nicht wieder weg ist
Was nicht in der Wiki drinsteht: Nach einem Reboot ist das IPKG wieder verschwunden, eine Lösung dafür steht in diesem Beitrag.
Okay, erste Hürde genommen, testen könnt ihr IPKG in der Konsole mit:
ipkg list |more
und dort werden viele Pakete aufgelistet, die ihr installieren könnt.
Digitemp installieren
digitemp wurde damals von Brian C. Lane entwickelt und ist Open-Source. Ich habe digitemp schon damals zur Temperaturmessung für meine Fritzbox 7170 benutzt. Meine aktuelle Fritzbox 6360 von Unitymedia ist derzeitig leider nicht hackbar.
Zum Installieren gebt ihr in der Konsole ein:
ipkg install digitemp
Eigentlich wären wir jetzt schon fertig, wenn es diese Adapterproblematik nicht gäbe. Deshalb lautet der nächste Schritt ->
Treiber für Seriell->USB-Adapter installieren
Ich benutze hier den Seriell-to-USB-Adapter von Amazon.de -> Digitus DA-70156 USB Seriell Adapter USB 2.0. Ebenfalls habe ich den preiswerteren Adapter mit dem pl2303-Chip ausprobiert, amazon.de->LogiLink Adapter USB 2.0 to Seriell.
Möglicherweise funktionieren auch andere Adapter, soll jeder für sich selber rausknobeln. Der Digitus-Adapter hat den FTDI -Chipsatz installiert und das muss irgendwie der NAS gesagt werden, mehr noch, bei der NAS muss jetzt die serielle Schnittstelle installiert werden. Wie das funktioniert habe ich einem Beitrag gefunden (Abschnitt Getting Started with Synology hacking). Wichtig: Wenn ihr einen der obigen Seriell-2-USB-Adapter benutzt, müsst ihr neben der usbserial.ko auch insmod pl2303.ko und insmod ftdi_sio.ko installieren!
Update 12.08.2012: Ich habe festgestellt, dass der Digitus Seriell-to-USB Adapter mit dem FTDI-Chip viel besser funktionierte, als der preiswertere mit dem pl2303-Chip. Ebenfalls gibt es beim Digitus sogar Treiber für Windows 7.
Damit alles auch nach einem Reboot gespeichert bleibt, in die Datei /etc/rc.local heinschreiben:
insmod /<path>/usbserial.ko
insmod /<path>/ftdi_sio.ko
insmod /<path>/pl2303.ko
mknod /dev/usb/ttyUSB0 c 188 0
Wenn ihr 2 USB-2-Seriell-Adapter benötigt, dann in dem obigen Code noch die Zeile
mknod /dev/usb/ttyUSB1 c 188 1
einfügen. Eigentlich benötigt man entweder den ftdi-Treiber oder den pl2303-Treiber, aber so ist man auf der sicheren Seite.
Wenn ihr die NAS dann nochmal gebootet habt, erst mal einen Kaffee trinken!
Treiber testen
Dafür habe ich wieder den Abschnitt Getting Started with Synology hacking genommen. Der pl2303-Treiber bzw. ftdi-Treiber muß in der Liste auftauchen!
Software mit der Schnittstelle und das Temperaturfühler-Modul testen.
Wenn jetzt der Seriell->USB-Adapter funktioniert, kann er mit:
digitemp_DS9097 -a -n 0
bzw. direkt an die Serielle Schnittstelle
digitemp_DS9097 -s/dev/usb/ttyUSB0 -a -i
getestet werden.
Das Ergebnis in der Konsole sieht dann so aus:
DiskStation> digitemp_DS9097 -a -n 0
DigiTemp v3.5.0 Copyright 1996-2007 by Brian C. Lane
GNU Public License v2.0 - http://www.digitemp.com
May 25 13:20:02 Sensor 0 C: 28.50 F: 83.30
May 25 13:20:06 Sensor 1 C: 25.12 F: 77.22
May 25 13:20:08 Sensor 0 C: 28.62 F: 83.53
May 25 13:20:10 Sensor 1 C: 25.12 F: 77.22
May 25 13:20:11 Sensor 0 C: 28.69 F: 83.64
Die Ausgabe kann noch geändert werden, einfach mal die Hilfe vom Digitemp aufrufen mit:
digitemp_DS9097 -h
Temperaturdaten auf einen an der Synology angeschlossenen USB-Stick speichern:
Um im Intervall von 10 Minuten auf einem USB-Stick die Temperaturen der Sensoren zu speichern, einfach in /etc/crontab folgende Zeile hinzufügen
*/10 (tab) * (tab)* (tab)* (tab)* (tab) root (tab) /opt/bin/digitemp_DS9097 -q o"%d.%m.%Y %H:%M:%S;%.2C;" -t0 -l/volumeUSB1/temp0.txt
Anschließend den Cronjob mit
synoservice --restart crond
wieder neu starten.
Grund für die Verwendung eines USB-Sticks: Die Festplatte geht nach 10min bei mir im Hibernation-Mode, also schaltet sich ab. Durch das Schreiben der Daten auf dem USB-Stick wird diese nicht aufgeweckt, spart Strom und Festplatten-Lebensdauer.
Die Ausgabe in der temp0.txt sieht so aus, wenn alle 3 Minuten eine Messung vorgenommen wird:
03.06.2012 01:15:02;11.31;
03.06.2012 01:18:02;11.44;
03.06.2012 01:21:02;11.38;
03.06.2012 01:27:02;11.38;
03.06.2012 01:30:03;11.44;
03.06.2012 01:33:05;11.44;
Diese Daten kann man jetzt natürlich weiter verwenden.
Wie gehts weiter? Okay, Möglichkeiten gibt es genug. Da man an diesem Modul sehr viele DS18S20-Temperaturfühler anschließen kann, kann man die Daten über Scripte natürlich weiterverarbeiten.
Also selbst mal aktiv werden und Ideen in den Kommentaren posten!
Hallo Mono,
yep, ein kurzes Script, das die beiden Temperatursensoren ständig vergleicht, sollte genügen. Ggf. noch die Abfrage machen, wenn ein Temperatursensor mal wieder 85 Grad (= Falschmessung) anzeigt. Ist bei mir öfter so.
Die Mikrocopter-Site sieht interessant aus. hm… wenn ich dazu Zeit hätte, wäre es was für mich. 🙂
LG
/robin
http://www.junop.de/Products/WwPumpCtrl/elek_zirk_steu_top.htm
noch ein Schaubild
und Erklärung
ein schöner Artikel einer Temp. Steuerung einer Zirkulationspumpe
http://www.mikrokopter.de/de/wasserpumpe.php
das müßte auch mit deinem systm klappen
1 script einer for schleife die jede sec die Temp am Rohr Pufferspeicher und Zirkulation abgleicht sollte reichen wenn ich das richtig verstehe
Pingback: Meine Top-Favorit-Apps für Android und iOS (Nexus 7, iPhone, iPad) | Robins Blog - Technik und Multimedia
Hi Robin
da Du ja schon aufrufst für Verwendungszwecke für die Synology DS212+:
ich hätte da einen Vorschlag für eine „aktive intelligente Lüftung“
Bauteile (Vorschlag):
4 x leise Lüfter 12 V von PC
und folgendes Lieblingsbauteil: http://www.electronic-software-shop.com/usb-relaiskarte-lrb-8-fach.html
wenn Du jetzt ein Wetter-Plugin installierst und die Ausgabe in eine Textdatei schreibst kannst du sie per Cronjob mit der Außentemp. Innentemp. und Soll-Innen Temperatur abgleichen und die Lüfter über die USB-Karte schalten
Beispiel:
Wettervorhersage: 36 Grad
Wunsch: 20 Grad in der Wohnung
die Lüfter arbeiten von 2-5 Uhr nachts und kühlen so die Wohnung auf 18 Grad nachts runter (aufgrund der hohen Temperatur-Meldung im internet)
im Frühjahr
Wettervorhersage: mittags 18 Grad
Dann ist man meistens am Arbeiten
Wunsch: sagen wir bis 18 Uhr dann hat es aber nur noch 10 Grad und du musst die Luft dann um mehr als 8 Grad erwärmen, als wenn der Lüfter um 12-14 gelüftet hätte ….
mfg
MONO