Probleme mit RS232-Sniffer

Gast #582716
Lesenswert?

Hallo Leute,

ich habe ein kleines Problem. Und zwar habe ich mir einen RS232-Sniffer 
gebaut... dies heißt im Wesentlichen, dass ich zwei SUB-D9-Stecker (Male 
und Female) 1:1 durchgeschalten und jeweils die RX- und TX-Leitung und 
die Signalmasse abgegriffen habe. Mit einem kleinen Schalter kann ich 
jeweils wählen, ob ich am Abgriff (SUB-D9 an der RX-Leitung) die RX- 
oder die TX-Leitung durchgeschliffen bekommen haben möchte.

Befindet sich am Abgriff kein COM-Port, dann funktioniert der 
Datenaustausch zwischen dem PC und der anzusprechenden Peripherie 
wurderbar... schliesse ich jedoch zum Lauschen einen COM-Port an, wird 
die Kommunikation unterbrochen...

Woran kann das liegen? Sind die Pegel auf der RS232-Leitung so schwach 
ausgelegt, dass der Pegel bei zwei Senken zusammenbricht? Benötige ich 
dafür eine Verstärkerschaltung? Wenn ja, wie sollte die aussehen?

Ich sollte vielleicht dazu erwähnen, dass ich zwei USB-RS232-Adapter 
(einer  mit FTDI- der andere mit Prolific-Chip) verwende, da mein Laptop 
nicht über eine COM-Schnittstelle verfügt.

Vielen Dank im Voraus für das Beantworten der Fragen

Holger
#582725
Lesenswert?

wie hieß es vor vielen Jahren in der Computerzetschrift "mc" aus dem 
Franzis-Verlag:
"Zur Inbetriebnahme einer RS232-Verbindung benötigt man einen Lötkolben 
und ein Oszilloskop"
Ich vermute auch, daß die Spannung durch irgendwelche 
Eingangswiderstände zu stark belastet wird. Der FTDI- oder Prolific 
hängt ja nicht direkt an +/-12V, da muß noch ein MAX232 oder ähnliches 
drin stecken, der überlastet wird.
Gast #582726
Lesenswert?

Hä?
Also du hast einen Stecker FEMALE und einen MALE, beide sind 1:1 
verbunden?
OK.

Wie ist dann das zu verstehen:
Mit einem kleinen Schalter kann ich
jeweils wählen, ob ich am Abgriff (SUB-D9 an der RX-Leitung) die RX-
oder die TX-Leitung durchgeschliffen bekommen haben möchte.
^^^^^               ^^^^^^^^^^^^^^^^
????

Ich würde sagen, beides 1:1 verbinden.

Nimm nen Umschalter:
ein Ende an Pin 2, das andere Ende an Pin3
(eins ist TXD, das andere RXD)
den Mittelkontakt des Schalter an RXD des PCs dranhängen..

Dann sollte das gehen...
Gast #582733
Lesenswert?

Hallo!

Ich blick jetzt nicht ganz durch, wie Du was angeschlossen hast, aber 
ich hab  das auch schon heufiger gemacht. Mit dem Kabel siehe Anhang.

Allerdings mit nem echten Comport und nur einem  USB Wandler.

Und falls Du ne Software suchst die 2 Comports gleichzeitig bedienen 
kann, um  RX TX gleichzeitig zu überwachen kann ich "Docklight" 
empfehlen.

gruß,
Bjoern
Angehängte Dateien:
Gast #582734
Lesenswert?

@Matthias

genauso hab ich es auch gemacht bzw. gemeint... vielleicht bissi 
umständlich beschrieben... sorry ;)

Meint Ihr man könnte Abhilfe schaffen indem ich mit 'nem Rechner mit 
serieller Schnittstelle (onboard) rangehe?
Gast #582740
Lesenswert?

@Tishima

genau wie auf Deinem Schaltplan habe ich es realisiert... nur dass ich 
anstelle von zwei Abgriffsbuchsen eben einen Schalter dazwischen 
gehangen habe, der jeweils zwischen RxD und TxD (je nachdem was ich 
loggen möchte) umschaltet.
Gast #582750
Lesenswert?

Ich würde es auf jeden Fall mal mit der Onboardschnittelle versuchen.
Von Notebook COM-Ports ist mir in Erinnerung, dass es welche geben
soll, die so knappe Treiberleistung haben, dass sie gerade mal einen
Eingang bedienen können.
#7731930
Lesenswert?

Hallo zusammen,

ich würde gerne diesen 14 Jahre alten Beitrag nochmal aufgreifen da ich so ziemlich das gleiche Problem wie der OP habe. Ich versuche mit 2 Prolific USB-to-COM Adaptern die RS-232 Kommunikation(Rx und Tx, daher 2 USB-to-COM´s) zwischen Host und Target zu sniffen. Host und Target sind auch mit einem USB-to-COM Kabel verbunden. Mein Setup entspricht dem o.A. "pt_monitoringcable.png", als Software benutze ich Docklight. Leider bricht die Kommunikation zusammen soabld der Host anfängt Daten zu senden. Der Vorposter hat die Vermutung geäussert das der Pegel zu schwach ist und deshalb die Verbindung abbricht. Da dasselbe Setup(mit Pegelwandler) bei einer 5V TTL Verbindung bei mir sonst immer gut funktioniert hat könnte ich mir das durchaus vorstellen. Hat jemand hier Rat wie ich dieses Problem lösen könnte ohne das ich den doch ziemlich teuren(zumindest für ein Hobby Projekt) Docklight Tap Adapter kaufen muss. Der Lösungsansatz mit 2 Onboardschnitstellen ist für mich leider nicht möglich das ich keinen PC mit 2 seriellen Schnittstellen mehr besitze.

Vielen Dank im Voraus. Güße, Max

#7732121
Lesenswert?

Max schrieb:

Host und Target sind auch mit einem USB-to-COM Kabel verbunden.

Was ist ein "USB-to-COM Kabel"? COM ist normalerweise die Portbezeichnung auf einem Win-PC. Meinst du damit einen USB-Seriell-Wandler auf RS232- oder 5V-Pegel mit einem Kabel dran? Wenn du die Daten sowieso auf einem PC hast, warum lauscht du dann nicht über einen seriellen Hub, z.B. Hub4com aus dem Com0Com-Projekt? https://com0com.sourceforge.net/

#7732147
Lesenswert?

Rainer W. schrieb:

Was ist ein "USB-to-COM Kabel"? COM ist normalerweise die Portbezeichnung auf einem Win-PC. Meinst du damit einen USB-Seriell-Wandler auf RS232- oder 5V-Pegel mit einem Kabel dran?

USB-to-COM meint dasselbe wie USB-to-RS232, weil der COMport im PC RS232-Pegel liefert. Die 5Volt-Variante nennt sich auch USB-to-UART oder USB-UART-Bridge. Das Kabel kann auch eine Stiftleiste sein und 3,3 Volt statt 5 Volt sind ebenfalls meist möglich.

Gruß Klaus (der soundsovielte)

#7732155
Lesenswert?

Max schrieb:

Der Lösungsansatz mit 2 Onboardschnitstellen ist für mich leider nicht möglich das ich keinen PC mit 2 seriellen Schnittstellen mehr besitze.

Auch die eingebauten COM-Schnittstellen sind nur für eine Punkt-zu-Punkt-Verbindung vorgesehen. Deshalb nimmt man für solche Aktionen die USB-to-TTL-Wandler. TTL hat eine Fan-Out von >5, man kann also mehrere Empfänger an einen Sender klemmen.

Wer allerdings solche grundlegenden Ratschläge für die Elektrik nötig hat, sollte wohl doch besser zum Vorschlag von Rainer W.(rawi) greifen und das Problem per Software erschlagen.

Gruß Klaus (der soundsovielte)

#7732167
Lesenswert?

Helmut -. schrieb:

In Software wird's auch nicht besser. Vielleicht ein anderes Hobby suchen?

Denke ich nicht. Habe 20 Jahre lang mit Erfolg den wunderbar einfach zu bedienenden free-serial-port-monitor zum Sniffen verwendet und damit viel Ratezeit vermieden. Läuft leider nur im 32-bit-Windows. Aber sooo kompliziert ist com0com nun auch nicht ...

Just my 2 cents.

#7732194
Lesenswert?

Die üblichen RS232-Treiber (MC1488/SN75188, MAX232 etc.) sind durchaus in der Lage, mehr als nur einen RS232-Empfänger anzusteuern.

Das funktioniert seit Jahrzehnten, btdt zigfach.

Wenn der Anschluss der oben beschriebenen Mithör-Lösung irgendwelche Probleme verursacht, dann ist bei der Verdrahtung was schiefgelaufen.

Entweder sind Rx/Tx des mithörenden PCs verwechselt worden, oder aber die Verbindung der PC-Masse mit der Masse der beiden miteinander kommunizierenden Geräte bringt eine Masseschleife mit entsprechenden Störungen ins Spiel.

#7732324
Lesenswert?

Klaus S. schrieb:

Auch die eingebauten COM-Schnittstellen sind nur für eine Punkt-zu-Punkt-Verbindung vorgesehen.

Ja. Dennoch hat es mit den klassischen Schnittstellen MC1488/1489 funktioniert, zwei Eingänge parallel zu legen und mitzuhören.

Harald K. schrieb:

Die üblichen RS232-Treiber (MC1488/SN75188, MAX232 etc.) sind durchaus in der Lage, mehr als nur einen RS232-Empfänger anzusteuern. Das funktioniert seit Jahrzehnten, btdt zigfach.

Auch schon seit Jahrzehnten gibt es andere Treiber, die gerade so knapp den Nennpegel erreichen oder sogar außer der Norm liegen. Auch der Empfänger kann da mehr oder weniger intolerant sein.

Wenn der Anschluss der oben beschriebenen Mithör-Lösung irgendwelche Probleme verursacht, dann ist bei der Verdrahtung was schiefgelaufen.

Das ist naheliegend, aber leider nicht die einzige Möglichkeit.

#7732333
Lesenswert?

Manfred P. schrieb:

Auch schon seit Jahrzehnten gibt es andere Treiber, die gerade so knapp den Nennpegel erreichen oder sogar außer der Norm liegen.

Wenn das Frickellösungen mit irgendwelchen aus den Signalpegeln von Handshakeleitungen gespeisten Transistoren o.ä. sind, sicher.

Der ... äh, Threadleichenschänder hat sich natürlich nicht darüber ausgelassen, was er da nun verwendet. Weil: Wo kämen wir da hin, wenn wir einfach brauchbare Informatione hätten? Dann könnten wir uns ja gar nicht vor lautere Raterei die Haare ausraufen!

#7732532
Lesenswert?

Man könnte das Problem übrigens mit einem OpAmp lösen, der hat ausreichend hochohmige Eingänge, daß auch ein hochohmiger Widerstandsteiler davor das RS232-Signal aus einem drecks-Pegelwandler nicht störend belastet. Man braucht nur 'ne symmetrische Versorgungsspannung für den OpAmp, aber die ist mit 'nem ICL7660 o.ä. leicht hinzubekommen.

Wenn man mit ±12 V Versorgungsspannung arbeitet, kann man den OpAmp auch ohne Widerstandteiler als Treiberstufe verwenden.

#7732560
Lesenswert?

Harald K. schrieb:

Man braucht nur 'ne symmetrische Versorgungsspannung für den OpAmp, aber die ist mit 'nem ICL7660 o.ä. leicht hinzubekommen.

Wenn man mit ±12 V Versorgungsspannung arbeitet, kann man den OpAmp auch ohne Widerstandteiler als Treiberstufe verwenden.

Viel zu viel Aufwand. Eine Umsetzung auf 5V-Pegel und dahinter ein "USB-to-UART"-Wandler erspart die bipolare Versorgung.

Moderator (Firma: Titel) Persönliche Seite #7732787
Lesenswert?

Max schrieb:

Der Vorposter hat die Vermutung geäussert das der Pegel zu schwach ist und deshalb die Verbindung abbricht.

Die Lösung steht im 2. Post dieses Threads: nimm ein Oszi und miss die Pegel auf den Leitungen.

Und das nächste Mal zerre nicht einen ururalten Thread sns Tageslicht, sondern beginne einen neuen und schreib da alles rein, was du hast (Typbezeichnungen, Bestellnummern, Links zum Produkt usw...), was du damit machen willst und was stattdessen passiert. Und wenn du dann noch einen alten Thread hast, der "genau" das selbe Problem behandelt, dann kopiere dessen Link auch in diesen Post.

#7733004
Lesenswert?

Lothar M. schrieb:

Die Lösung steht im 2. Post dieses Threads: nimm ein Oszi und miss die Pegel auf den Leitungen.

Da Max vermutlich nur die Steuerung seines Elektrofahrrads knacken möchte und eventuell nicht einmal ein Digitalmultimeter hat, dürfte diese Lösungsmöglichkeit ein No-Go für ihn sein.

Da aber offensichtlich Beiträge auf mikrocontroller.net auch nach einiger Zeit noch von Hilfesuchenden durchkämmt werden (auch von mir), fände ich es sinnvoll, auch anderweitig vernünftige Lösungen vorzuschlagen. Und die besteht in diesem Fall eben darin, nicht einer Fummellösung mit Meßgeräten zu Leibe zu rücken, sondern die von vornherein innerhalb der Spezifikation liegende Lösung mit der Umsetzung auf TTL-Standard vorzuschlagen. Jedes Gerät mit USB-Ausgang bekommt einen USB-UART-TTL-Wandler und jedes Gerät mit RS232-Pegel bekommt einen RS232-TTL-Wandler. TTL ist dafür ausgelegt, daß ein Ausgang mehrere Eingänge bedient, RS232 nicht. Das kostet beim billigsten Anbieter für 4 Pegelwandler etwas mehr als 10Euro, ist billiger als ein Oszi oder die meisten Digitalmultimeter und funktioniert elektrisch einwandfrei.

Just my 2 cents

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren