Muss mal gerade etwas Frust loswerden. Ich versuche seit längerem über ein BTM222 Bluetooth Modul Daten zu übertragen und schlage mich deswegen mit so allerhand Windows API Funktionen herum. Mein aktuelles Programm schickt immer eine 1-Byte Anfrage und wartet auf eine definierte Anzahl von Byte vom Mikroprozessor. Am Anfang ging es relativ gut, dann kam hinzu dass zwischendurch wohl mal einzelne Zeichen länger dauern über die Schnittstelle, ist auch kein Problem soweit, ist ja eh alles paketorientiert. Die Windows API Funktionen für die COM Schnittstelle (CreateFile, etc pp) unterstützen ja diese Timeouts. Da fängt schon der erste Mist an. http://msdn.microsoft.com/en-us/library/aa363437(VS.85).aspx http://msdn.microsoft.com/en-us/library/aa363437(VS.85).aspx Was ist denn bitte der Unterschied zischen ReadInterval und ReadTotalTimeOutXXX? Ich meine, wartet die ReadTotalTimeOutXXX Kombo nicht auch auf Zeichen beim Empfangen? Kann da keinen Sinn oder Zweck hinter ReadInterval erahnen. Vom Prinzip rufe ich also nach der Sendefunktion direkt die Empfangsfunktion mit einem saftigen Timeout auf, das ja eigentlich nie in Kraft treten sollte, da vorher schon die angeforderte Anzahl an Byte gelesen werden. Wenn dann doch mal was verloren geht, soll nach ein paar hundert Millisekunden neu angefordert werden. Naja, wie auch immer. Auf ein mal (Habe nichts wesentliches geändert) kommt noch ne ganz andere tolle Sache dazu: Portmon funktioniert jetzt nicht mehr zusammen mit anderer Software (sowohl nicht mit meiner als mit HTerm auch nicht) auf der virtuellen Schnittstelle. Entweder das eine Programm sagt, dass die Schnittstelle geblockt ist, oder das andere. Na ganz geil. Dann trennt man ein paar mal die Verbindung und kann auf ein mal keine Verbindung mehr herstellen. Das BTM222 tut so als hätte es nicht mal einen Hauch von Connection-Request von meinem PC bekommen. Das Windows-Bluetooth Symbol unten rechts verschwindet auf ein mal. Da hilft dann nur USB BT Stick ziehen und wieder reinstecken und das BTM222 Modul resetten (denn sonst wird der Serielle Dienst nicht angezeigt). Generell habe ich so das Gefühl, dass Bluetooth mit heißer Nadel gestrickt worden ist. Und zwar in jedweder Ausführung. Der WIDCOMM Bluetooth Stack den ich vorher auch mal drauf hatte (gleiche komische Probleme) ist ja von Grund aus schon relativ träge. Aber auch der meinte zwischendurch mal die Bluetooth Hardware nicht mehr zu kennen. Oh mann, da frage ich mich wirklich, warum man heutzutage überhaupt noch Informatik (mit entsprechender Fachrichtung) studiert wenn man dann vor scheiß Windowskisten sitzt und sich mit so einem Treiber-, Framework- und API-Dreck rumschlagen muss. Die Programmierung vom Mikrocontroller ging übrigens ziemlich angenehm von statten, wollte ich noch loswerden. So, keine Ahnung was der Post jetzt soll. Kann ja auch bei Gelegenheit gelöscht werden, aber sonst kann ich heute nicht mehr ruhig schlafen. ;)
nu ja, unter linux hast das problem nicht. bis auf die tatsache, dass bluetooth trotzdem schrott bleibt.
Ja, aus Erfahrung mit anderen Bluetooth Geräten kann man sagen, dass Bluetooth wirklich Mist ist. Ein Kollege hat sich einen Laptop gekauft, dessen eingebaute Bluetooth Schnittstelle wohl zu schwach ist um eine Funkmaus betreiben zu können (Man musste die Maus sehr nahe am Laptop haben). Mit einem externen Mini-BT Adapter geht es. Ich werde jetzt mal die XBee Module probieren und an eine echte serielle Schnittstelle anschließen.
xbee geht gut. hab' bei 115200 baud 60 kb/s drüber laufen, kein problem. musst nur aufpassen, wenn wlan am selben kanal liegt wie xbee und du xbee pro hast, dann ist stille im wlan :-)
Auf welche Entfernung und bei welchen Voraussetzungen denn? Klingt ja interessant. Die Wi232 Module von Radiotronix sind anscheinend auch ganz brauchbar.
60kb/s kann aber auch nicht sein. Vielleicht 6kb/s? oder 60kbit/s?
> 60kb/s kann aber auch nicht sein. Vielleicht 6kb/s? oder 60kbit/s?
Es gibt Leute, die der festen Ansicht sind, daß das kleingeschriebene
"b" eindeutig für "bit" stünde, und es deswegen nicht ausschreiben.
Sind ja auch zwei Zeichen, die man damit einsparen kann.
> Auf welche Entfernung und bei welchen Voraussetzungen denn?
oh, ich vergaß ... xbee (ohne pro) reicht aus, ums wlan im selben raum
stillzulegen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.