USB Serial Adapter Probleme

Um die SynScan Teleskopsteuerung an einen Computer anzuschließen, benötigt man ein serielles RS232 Interface am Rechner. Jedoch verfügen die meisten modernen Notebooks und Subnotebooks nicht mehr über einen solchen Port. Es gibt mehrere Möglichkeiten, das Problem zu lösen:

  • Man kauft sich eine Dockingstation für das Laptop. Diese Dockingstations haben meist einen RS232 Port. Eine Dockingstation ist ein Stück Hardware das alle Ausgänge des Notebooks repliziert und über eine einfache Methode verfügt, ein Notebook anzuschließen. Normalerweise hat man die Dockingstation auf dem Schreibtisch stehen und schließt an sie alle Kabel (Monitor, externe Maus, externe Tastatur, .. ) an. Möchte man das Notebook mitnehmen, klinkt man es einfach aus und die Kabel der externen Geräte können stecken bleiben.
  • Das Notebook verfügt über eine freie PCMCIA- oder Express-Card Schnittstelle und man findet eine passende RS232 Karte dafür.
  • Man kauft einen USB-RS232 Adapter. Der wird in einen USB Port gesteckt und hat auf der anderen Seite die RS232 Schnittstelle. Eine Treibersoftware übersetzt das USB Protokoll in RS232. Das ist die billigste Lösung.

Ich habe mich für die billige Lösung entschieden (Billig, da stehste doch drauf!) und bei Amazon einen „BigTec“ USB-RS232 Adapter gekauft (“2direct USB-Seriell Adapter Konverter USB-Seriell USB-A / Stecker – DB9 / Stecker“), der auf dem Prolific Chipsatz basiert, Kostenpunkt ~4€. Eine Treiber CD war nicht vorhanden. Den Treiber kann man allerdings bei dem Amazon Händler , bei BigTec oder bei Prolific selbst herunterladen. Nur leider funktionierte der Treiber nicht auf Windows Vista 32bit (oder zumindest nicht mit diesem Adapter). Jedenfalls wurde im Device Manager für den Adapter ein Error10 und ein gelbes Ausrufezeichen angezeigt, für Prolific offebar ein bekanntes Problem, das sie aber nicht weiter kümmert. In einem Internetforum sagte jemand völlig richtig: „It seems to me that Prolific does not yet understand the modern Windows environment for which they must produce drivers.“

Dies Problem konnte ich schließlich mit einer älteren ProlificTreiberversion lösen und es ließ sich von da an ganz gut an. Das Teleskop nahm Steuerbefehle von dem ASCOM Treiber entgegen. Doch beim ersten Versuch nachts Autoguiding zu betreiben, gab es einen Windows Crash (Blue Screen of Death) nach dem nächsten! Die Analyse mit WinDbg ergab:

DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high. This is usually
caused by drivers using improper addresses.
If kernel debugger is available get stack backtrace.
Arguments:
Arg1: 0000004c, memory referenced
Arg2: 00000002, IRQL
Arg3: 00000001, value 0 = read operation, 1 = write operation
Arg4: 8283cfc1, address which referenced memory

STACK_TEXT:
WARNING: Stack unwind information not available. Following frames may be wrong.
d1fa3950 8283cfc1 badb0d00 00000000 00000000 nt!Kei386EoiHelper+0x291c
d1fa39d0 8283d06d 00000000 8740532c 00000000 Wdf01000+0x35fc1
d1fa39e8 82836d8a 00000000 8740532c 00000000 Wdf01000+0x3606d
d1fa3a0c 82848eee 873fbc64 00000000 870d5678 Wdf01000+0x2fd8a
d1fa3a30 82822244 87405200 00000001 93c1ae0a Wdf01000+0x41eee
d1fa3a50 93c1bec2 874052f8 78bfad00 93c1ae0a Wdf01000+0x1b244
d1fa3a6c 93c1b066 78bfad00 93c1ae0a d1fa3aec ser2pl+0x5ec2
d1fa3abc 93c1c1b8 01826ad0 00000000 88826ad0 ser2pl+0x5066
d1fa3aec 93c1b4aa 88826ad0 78bfad00 78e3af18 ser2pl+0x61b8
d1fa3b2c 82844908 78c04408 00000001 00000001 ser2pl+0x54aa
d1fa3b48 828476bb 78c04408 78bfad00 00000001 Wdf01000+0x3d908
d1fa3b70 82849fb8 78bfad00 874052f8 873fbbf0 Wdf01000+0x406bb
d1fa3b90 8284b722 873fbb00 82871188 873fbbf0 Wdf01000+0x42fb8
d1fa3bac 8284c85d 00000000 d1fa3c1c 871aab20 Wdf01000+0x44722
d1fa3bd0 8282bfbc 871aab20 d1fa3c1c 88826be0 Wdf01000+0x4585d
d1fa3be8 93c1ab72 88826908 777d96f0 871aab20 Wdf01000+0x24fbc
d1fa3c1c 8283af4b 777d96f0 871aab20 870b93a8 ser2pl+0x4b72
d1fa3c3c 8283b618 871aab20 d1fa3c60 81f0bfd3 Wdf01000+0x33f4b
d1fa3c48 81f0bfd3 885f8db8 871aab20 871aab20 Wdf01000+0x34618
d1fa3c60 9048f581 88d7a520 870b92f0 00000000 nt!IofCallDriver+0x64
d1fa3c74 81f0bfd3 870b92f0 001aab20 871aab20 serenum+0x1581
d1fa3c8c 8209c615 871aab20 871aacb0 88d7a520 nt!IofCallDriver+0x64
d1fa3cac 8205c5a3 870b92f0 88d7a520 00000001 nt!NtQueryInformationProcess+0x1c63
d1fa3d38 81ea7a1a 870b92f0 871aab20 00000000 nt!NtReadFile+0x67b
d1fa3d64 779a9a94 badb0d00 0012f0ac 00000000 nt!ZwQueryLicenseValue+0xbd2
d1fa3d68 badb0d00 0012f0ac 00000000 00000000 0x779a9a94
d1fa3d6c 0012f0ac 00000000 00000000 00000000 0xbadb0d00
d1fa3d70 00000000 00000000 00000000 00000000 0x12f0ac

Das bestätigte mir im wesentlichen, dass wie vermutet das Problem von dem Prolific USB-RS232-Adapter herrührte. Die letzte Treiberversion von Prolific schien das Problem sogar zu beheben, allerdings war das ja die Version, die bei mir nicht funktionierte!! Grrr! So ein Aufwand für ein Teil, das nicht mal 5€ kostet!

Also nächster Versuch mit einem anderen USB-RS232 Adapter! Diesmal kaufte ich wieder bei Amazon für knapp 10€ einen „Digitus USB 2.0 RS 232 seriell Adapter mit USB Verlängerungskabel / Einsetzbar für PDA, Modems u.a.„. Der Vorteil bei dem war, dass er auf einem völlig anderen Chipsatz basiert: FTDI / FT232RL. Eine Treiber CD war diesmal dabei und alles ließ sich anstandslos installieren. Trotzdem wäre ich fast verzweifelt, weil die ASCOM Software nicht mit dem Teleskop sprechen wollte! Nach einiger Zeit war die Lösung entdeckt: Im Gegensatz zum Prolific Adapter, darf bei dem Digitus Adapter, die SynScan Steuerung nicht auf „RS232 Direct Mode“ stehen, um Befehle entgegenzunehmen. Aber jetzt läuft das ganze stabil.