Kapitel 3 – Sniffen/Überwachen der seriellen Verbindung zwischen „Master-PC“ und „Zielgerät“
Kommunikation zwischen einem Hardwaregerät und einem PC über seriell
Der Master-PC (rechts) kommuniziert mit dem Zielgerät über ein
Serial Communication Device (typisch ein USB↔Seriell-Wandler:
UART/TTL, RS-232 oder RS-485). Der Sniffing-PC (links)
öffnet zwei Ports (COM5 und COM6) und lauscht passiv mittels zweier USB-zu-Seriell-Adapter auf die Leitungen:
an COM5 RX an TX des Geräts, an COM6 RX an TX des PCs. Massen (GND) sind gemeinsam.
3.1 Zweck und Konzepte
Wir wollen die zwischen Software auf dem Master-PC und dem Zielgerät ausgetauschten Bytes überwachen und sniffen, ohne die Kommunikation zu beeinträchtigen. Das ist ein typischer passiver physischer Man-in-the-Middle:
zwei USB-zu-Seriell-Adapter, nur auf RX verbunden, „lesen“ jeweils eine Richtung.
Nützlich für Debugging, Protokollanalyse und als Logger für Audits oder Reverse Engineering.
3.2 Anschlüsse (Schritt für Schritt)
- COM5 (Sniffing-PC) → RX des Adapters an TX des Geräts (lauscht, was das Ziel sendet).
- COM6 (Sniffing-PC) → RX des Adapters an TX des PCs (lauscht den Befehlen des Master-PC).
- Gemeinsames GND zwischen beiden Adaptern und beiden Geräten (geteilte Referenz).
- TX der Sniffing-PC-Adapter nicht verbinden: rein Listen-only (hohe Impedanz), ohne die Leitung zu stören.
In SerialTool zwei Sitzungen öffnen: COM5 und COM6. In beiden die Baudrate und das Format identisch zu Master/Ziel setzen (z. B. 115200-8N1). Unbekannte Baud? Häufige Werte testen oder Bitdauer mit Oszilloskop/Logikanalysator messen.
3.3 Gleiches Protokoll, unterschiedliche Ebenen: UART/TTL, RS-232, RS-485
Das asynchrone serielle Protokoll (Start, 7/8 Datenbits LSB-first, optionale Parität, 1+ Stopp) ist gleich.
Es ändert sich nur die physikalische Ebene, auf der die Bits laufen:
- UART/TTL (3,3 V/5 V): single-ended, „1“ High / „0“ Low.
- RS-232: invertierte, ±-Spannungspegel (typisch ±3…±12 V), ebenfalls single-ended.
- RS-485: differentiell auf A/B-Paar, oft halbduplex Multi-Drop; gemeinsame Bezugsmassen empfohlen.
Daher den passenden Adapter nutzen:
USB↔TTL für UART, USB↔RS-232 für RS-232, USB↔RS-485 für RS-485. Der Rahmen bleibt gleich, Pegel und Topologie (Differential/Terminierung) unterscheiden sich.
3.4 Einsatzgebiete (CNC, Industrie, u. a.)
Dieses Setup ist gängig in CNC, Industrieanlagen, PLC/HMI, Robotik,
Waagen, POS, Sensorik, Messtechnik, Gebäudeautomation – überall, wo ein PC/PLC ein Gerät seriell steuert. Mit der beschriebenen Sniffing-Methode kannst du Verkehr überwachen/sniffen/debuggen/loggen zur Funktionsanalyse, Fehlerdiagnose, Befehlstracking und Validierung.
3.5 Modbus über seriell
Serielle Ports transportieren häufig Modbus RTU/ASCII, ein weit verbreitetes Master/Slave- (heute Client/Server-)Protokoll in der Industrie.
Der Master sendet Anfragen (Lesen/Schreiben von Coils und Registern), das Gerät antwortet.
SerialTool enthält einen Modbus-Client zum schnellen Abfragen von Registern (Diagnose/Tests)
sowie Monitor/HEX-Ansicht für Rohrahmen (Adresse, Funktion, Daten, CRC).
3.6 Firmware-Update und Parametrierung
In der Embedded-Welt wird seriell oft für Firmware-Updates oder Parameterübergabe ans Ziel verwendet.
Beispiele: Bootloader auf Custom-Boards, Arduino-Ökosysteme, diverse Mikrocontroller. Entwickler haben hier oft zwei Bedürfnisse:
- Debuggen der Anwendung, die mit dem Ziel spricht (Befehle, Timing, Fehler prüfen).
- Reverse Engineering eines bestehenden Protokolls (ein „geschlossenes“ Master-Programm spricht mit einem Board;
ich sniffe die Nachrichten, um sie zu verstehen und später mit eigener Software zu replizieren).
3.7 Praxishinweise und Tools
- Typisch braucht dieses Setup zwei PCs (Master und Sniffing-PC) und mindestens zwei USB-zu-Seriell-Wandler fürs bidirektionale Sniffen.
- Für RS-232 einen RS-232-Tap/Converter nutzen; für RS-485 eine Empfangs-only-Schnittstelle an die A/B-Klemmen anschließen
(Terminierung/Polarität beachten). Bei halbduplex RS-485 erkennt man die Richtung über den zeitlichen Kontext.
- Steuerpins (RTS/CTS, DTR/DSR, DCD, RI) bleiben außen vor; bei Hardware-Flow-Control ggf. dedizierte Sonden erwägen.
- In SerialTool kannst du HEX-Ansichten und Zeitstempel aktivieren und als Logger (Text/CSV/pcap) für spätere Analysen speichern.
Kurz: gleiches serielles Protokoll (asynchrone Rahmen), andere physikalische Ebenen (TTL/RS-232/RS-485).
Mit passivem Zwei-RX-Abgriff und Software wie SerialTool kannst du die Kommunikation zwischen Master-PC und Zielgerät zuverlässig überwachen, sniffen,
debuggen und protokollieren.