[[Vorlage(archiviert, )]] {{{#!vorlage Wissen [:Pakete installieren: Installation von Programmen] [:Paketquellen freischalten: Bearbeiten von Paketquellen] [:Terminal: Ein Terminal öffnen] [:Editor: Einen Editor öffnen] [:Rechte: Rechte für Dateien und Ordner ändern] }}} [[Inhaltsverzeichnis()]] Die US-Amerikanische Firma [http://www.sleeptracker.com/ Sleeptracker] {us} stellt Schlafphasenwecker her. Diese wecken nicht nur zu einer dem Schlafrhythmus angepassten Uhrzeit, sondern zeichnet auch den Verlauf des Schlafes auf. Aus diesen Aufzeichnungen heraus kann man sein Schlafverhalten bewusster wahrnehmen oder gegebenenfalls auch ändern. Wie so oft existiert die vom Hersteller ausgegebene Software jedoch nur für Windows. Die zum Auslesen der Daten verwendete Schnittstelle ist ein USB-Seriell-Adapter mit dem FTDI-SIO Chip, welcher laut `lsusb` auch problemlos erkannt wird. In der [http://sleeptracker.de/index.php?page=forum deutschen Community] {de} zum Gerät wurde ein kleines Perl-Skript erarbeitet, welche das Auslesen der Daten auch für Linux und Mac ermöglicht. Da Perl bereits in Ubuntu installiert ist, kann das Skript problemlos verwendet werden. Ein kleines Manko bleibt: Das Skript kann lediglich die Daten auslesen. Die Datenauswertung bleibt anderen Programmen überlassen. Entweder man strickt sich diese selbst, oder man benutzt den kostenlosen Service [http://sleeptracker.net Sleeptracker.net] {de}, auf dem man sein virtuelles Schlaftagebuch mit Auswertmöglichkeiten führen kann. Da dies für die meisten Anwender von Interesse sein dürfte, wird im Folgenden davon ausgegangen, dass man dort einen Account besitzt. = Installation = Damit das Skript die Befehle für die Serielle Schnittstelle kennt, muss folgendes Paket installiert [1] werden: * '''libdevice-serialport-perl''' (''universe'') Nun kann das Skript bei [http://sleeptracker.net Sleeptracker.net] {de} im Downloadbereich heruntergeladen werden. Die Datei ist unter dem Namen '''perl.txt''' hinterlegt, kann aber per Rechtsklick unter beispielsweise '''sleeptracker.pl''' im Homeverzeichnis gespeichert werden. [[Vorlage(Fremd, Software)]] Versucht man nun, das Skript auszuführen, so kann das Gerät nicht auf die Gerätedatei zugreifen, da für diese keine Berechtigung besteht. In Ubuntu werden die seriellen Schnittstellen nur für die Gruppe `dialout` freigegeben. Möchte man also das Skript unter seinem Benutzernamen ausführen, muss man den entsprechenden Benutzer der Gruppe hinzufügen [5]: {{{#!vorlage Befehl sudo usermod -aG dialout BENUTZERNAME }}} Steckt man das USB-Kabel ein, so kann man im Ordner '''/dev''' einen neuen Ordner '''Serial''' erkennen. Neu ist auch eine Gerätedatei, '''/dev/ttyUSB0'''. Diese entspricht dem USB-Seriell-Adapter (dem Datenkabel mit Klemme, sozusagen). Jetzt noch die Uhr in den Data-Modus gestellt und angeklemmt. Nun kann man das Skript im Terminal ausführen [3]: {{{#!vorlage Befehl perl sleeptracker.pl /dev/ttyUSB0 }}} Es öffnet sich die Sleeptracker.net-Seite in der man einen neuen Eintrag ins Schlaftagebuch erstellen kann. Die ausgelesenen Daten werden dabei automatisch mitgegeben. Hinweis: Man muss auf der Seite bereits eingeloggt sein, damit es funktioniert. = Verwendung anderer Browser = Der Ersteller des Skripts benutzt [:Firefox:]. Entspricht dies nicht der eigenen Präferenz, kann man den Befehl zum Aufruf des Browsers ändern, indem man die gut kommentierte Datei '''sleeptracker.pl''' in einem Editor öffnet [3] und in Zeile 41 den Eintrag entsprechend abändert. = Fehlerbehebung = Spuckt das Skript lediglich den Fehler aus, dass die Funktion `baudrate` nicht aufrufen werden könne, hat man entweder den Benutzer nicht der Gruppe `dialout` hinzugefügt. Oder man zieht einfach das USB-Kabel einmal ab und steckt es wieder an, dann sollte das Skript wieder funktionieren. = Links = * [http://www.sleeptracker-tec.de/tools/phorum/read.php?2,19 Forenthread] {de}, in dem die Entstehung des Skripts nachvollzogen werden kann * [http://www.sleeptracker.net Sleeptracker.net] {de} Online-Schlaftagebuch * [http://www.sleeptracker.com Herstellerseite] {en} (Für einen deutschen Anbieter der Uhren soll hier keine Werbung erscheinen) # tag: Internet, Gesundheit