ANLEITUNG

Serielle Ausgabe mit Zeitstempel in eine Datei loggen

Sie brauchen die Konsolenausgabe eines Geräts in einer Datei: um sie weiterzugeben, zu durchsuchen oder um einen Fehler zu erwischen, der erst nach Stunden auftritt. So geht es mit den üblichen Werkzeugen, und darauf sollten Sie achten, wenn die Aufzeichnung tagelang laufen muss.

Aktualisiert im September 2026

PuTTY (Windows)

  • PuTTY öffnen, als Verbindungstyp „Serial“ wählen und COM-Port sowie Baudrate eintragen.
  • Unter Session → Logging „Printable output“ wählen (oder „All session output“, um Steuerzeichen zu behalten).
  • Den Dateinamen festlegen. Platzhalter wie &Y&M&D-&T ergeben eine Datei pro Sitzung, zum Beispiel capture-&Y&M&D-&T.log.
  • Wählen, ob eine vorhandene Datei überschrieben oder ergänzt wird, dann die Sitzung öffnen.

PuTTY schreibt die Rohausgabe. Es fügt keinen Zeitstempel pro Zeile hinzu: Wann eine Zeile ankam, wissen Sie nur, wenn das Gerät selbst die Uhrzeit ausgibt. Für Zeitstempel pro Zeile nehmen Sie Tera Term, minicom oder eines der Skripte unten.

Tera Term (Windows)

  • Mit dem seriellen Port verbinden (Setup → Serial port für die Baudrate).
  • File → Log… öffnen und einen Dateinamen wählen. Datumsplatzhalter wie %Y%m%d_%H%M%S sind im Namen erlaubt.
  • „Timestamp“ anhaken, um jeder Zeile die Uhrzeit voranzustellen, und „Append“, um eine vorhandene Datei fortzusetzen.

Unter Windows ist Tera Term die einfachste Wahl, wenn Sie Zeitstempel ohne eigenes Skript brauchen.

minicom (Linux, macOS)

minicom -D /dev/ttyUSB0 -b 115200 -C capture.log

Die Option -C schreibt alles in capture.log. In minicom startet oder stoppt Strg-A L die Aufzeichnung, und Strg-A N schaltet einen Zeitstempel am Zeilenanfang ein (neuere Versionen).

Linux-Kommandozeile

Für unbeaufsichtigte Aufzeichnungen ist eine einfache Shell-Pipeline oft robuster als ein Terminalprogramm:

# Port auf 115200 Baud, Raw-Modus
stty -F /dev/ttyUSB0 115200 raw -echo

# Zeitstempel für jede Zeile (ts steckt im Paket "moreutils")
cat /dev/ttyUSB0 | ts '%Y-%m-%dT%H:%M:%.S' >> capture.log

Starten Sie das in screen oder tmux oder als systemd-Dienst, damit es nach dem Abmelden weiterläuft. Bei langen Aufzeichnungen die Datei mit logrotate rotieren.

Python-Skript (jedes Betriebssystem)

Ein paar Zeilen pyserial geben Ihnen volle Kontrolle über das Format, zum Beispiel ISO-8601-Zeitstempel mit UTC-Offset:

import datetime
import serial  # pip install pyserial

PORT = '/dev/ttyUSB0'  # Windows: 'COM3'
with serial.Serial(PORT, 115200, timeout=1) as port, open('capture.log', 'a', buffering=1) as log:
    while True:
        line = port.readline()
        if line:
            stamp = datetime.datetime.now().astimezone().isoformat(timespec='microseconds')
            log.write(f"{stamp} {line.decode('utf-8', 'backslashreplace').rstrip()}\n")

Binäre oder nicht UTF-8-kodierte Bytes bleiben als \x-Sequenzen erhalten, statt das Log zu zerstören.

Raspberry Pi als Logger

Ein Raspberry Pi mit der Kommandozeilen- oder Python-Variante ist ein verbreiteter Eigenbau-Logger, den man vor Ort lassen kann. Das funktioniert, aber prüfen Sie vorher diese Punkte:

  • Ein Stromausfall kann die SD-Karte beschädigen. Nutzen Sie ein schreibgeschütztes Root-Dateisystem oder zumindest eine gute SD-Karte und ein Journaling-Dateisystem.
  • Ohne Netzwerk oder RTC-Modul geht die Uhr nach einem Neustart falsch, und damit auch Ihre Zeitstempel.
  • RS-232 und RS-485 brauchen einen Pegelwandler oder Transceiver. Der UART des Pi kann nur 3,3-V-TTL.
  • Es gibt keine galvanische Trennung. Bei Maschinen mit Masseversatz kann das zu fehlerhaften Daten oder beschädigter Hardware führen.

Wenn die Aufzeichnung tagelang laufen muss

Loggen per Laptop ist auf dem Labortisch in Ordnung. Unzuverlässig wird es, wenn der Laptop beim Kunden oder über Nacht im Testlabor laufen soll:

  • Der Laptop geht in den Ruhezustand oder startet für ein Update neu, und das Log bricht ab.
  • Die USB-Energieverwaltung legt den Seriell-Adapter schlafen, und der Port verschwindet.
  • Es fehlen Zeitstempel, weil die Aufzeichnung ohne sie gestartet wurde.
  • Masseversatz zwischen Laptop und Maschine erzeugt Zeichensalat oder Schlimmeres.
  • Niemand will einen Firmenlaptop drei Wochen lang im Schaltschrank eines Kunden lassen.

Wenn Sie trotzdem diesen Weg gehen: Ruhezustand abschalten (unter Windows powercfg /change standby-timeout-ac 0), die selektive USB-Energiesparfunktion in den Energieoptionen deaktivieren, Zeitstempel pro Zeile einschalten, das Log in Tagesdateien aufteilen und einen isolierten USB-Seriell-Adapter verwenden, wenn das Zielgerät nicht auf derselben Masse liegt.

Stattdessen ein eigenständiger Logger

Genau für diese Situation entwickeln wir den Remora SFL-2: einen kleinen seriellen Logger, den Sie an eine oder zwei Schnittstellen anschließen und vor Ort lassen. Er zeichnet UART-, RS-232- oder RS-485-Ausgaben auf zwei isolierten, nur empfangenden Eingängen auf, mit Zeitstempel in jeder Zeile, in 8 GB internem Speicher. Kein Laptop, keine App, keine Cloud. Wenn Sie zurückkommen, stecken Sie USB-C an und kopieren einfache Textdateien.

Der SFL-2 ist in Entwicklung. Die Vorbestellung ist für Januar 2027 geplant.