Forum: Mikrocontroller und Digitale Elektronik Bluetooth Mehrere UART - ein Dongle - mehrere ComPorts


von Christian S. (autoguider)


Lesenswert?

Werte Wissende,

nach einiger Recherche im Netz habe ich immer noch Unsicherheit ob/ wie
mein Vorhaben zu realisieren ist.
Ich möchte über Bluetooth mit 3 End-Geräten vom PC aus über UART
bidirektional kommunizieren.
In den Endgeräten übernimmt ein ATMEGA die weitere Arbeit.

Ich dachte z.B. das HC05 oder das Board für einen Arduino (RS232 über 
BT) bei den Endgeräten zu verwenden.
Am PC ist ein Bluetooth Dongle im USB Anschluß.
Zur Bedienung brauche ich für jedes Gerät einen eigenen (virtuellen)
Com-Port.
Frage: Richtet Win 7 für jedes Endgerät einen Com-Port ein ?
Die Kommunikation mit den Endgeräten findet nicht gleichzeitig statt.

Die Endgeräte schicken nach Ausführung des jeweiligen Kommandos eine
nachricht an den PC zurück. Ist hierzu die Umstellung von Slave <->
Master erforderlich ?
Wie wäre sonst eine bidirektionale Verbindung realisierbar ?

Ich möchte gerne die Steuerkabel vermeiden.
Ansonsten wäre auch ein USB Hub mit 3 USB/ RS232 Wandlern eine einfache
Alternative.
Für Eure Ratschläge wäre ich dankbar.

Viele Grüße

Christian

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Christian S. schrieb:
> Frage: Richtet Win 7 für jedes Endgerät einen Com-Port ein ?

Nein. UART über Bluetooth ist eine exklusive Veranstaltung für 2 
Endpunkte. Der Bluetooth Stack stellt dir 1 Verbindung über 1 virt. COM 
Port zur Verfügung - unabhängig von der Anzahl der möglichen Endpunkte 
auf der anderen Seite.

: Bearbeitet durch User
von Jim M. (turboj)


Lesenswert?

Christian S. schrieb:
> Frage: Richtet Win 7 für jedes Endgerät einen Com-Port ein ?

Wenn es Bluetooth classic SPP Geräte sind: Ja. IIRC ist HC-05 und HC-06 
BT Classic.

Note: Bluetooth Low Energy wird von Win7 nicht unterstützt (und hat auch 
in späteren Versionen keine COM Ports mehr verfügbar).

Ich hatte auf meinem alten PC wegen einiger BT Geräte COM-Ports jenseits 
von COM100.

Christian S. schrieb:
> Wie wäre sonst eine bidirektionale Verbindung realisierbar ?

Einfach Daten senden und empfangen... ;-)

Christian S. schrieb:
> Ich möchte gerne die Steuerkabel vermeiden.

Wer Funk kennt, nimmt Kabel...

von (º°)·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.· (Gast)


Lesenswert?

>> Frage: Richtet Win 7 für jedes Endgerät einen Com-Port ein ?

> Nein. UART über Bluetooth ist eine exklusive Veranstaltung für 2
> Endpunkte.

Comports fuer Endgeraete wird Mann bei W7 selber anlegen muessen.
Je nach Endgeraet koennen das auch mehrere sein.

Ich kann z.B. gleichzeitig:
mit einem Terminalprogramm mit dem Pythoninterpreter auf
dem Dummfon reden,
eine VNC-Sitzung auf das Dummfon ueber einen IP-BT-Proxy
laufen lassen und ueber eine dritte serielle (BT-)Schnittstelle
den GPS-Empfaenger vom Dummfon am Notebook nutzen.

Kann also so exklusiv nicht sein.

von Christian S. (autoguider)


Lesenswert?

Vielen Dank für Eure Antworten.

In bin denoch etwas verunsichert.
Ich verstehe Mathhias S. so daß genau eine UART Verbindung via BT zu 
genau einem Endgerät möglich ist.

Die Aussage von Jim Meba verstehe ich so daß für jeden HC05 ein 
virtueller Com-Port entweder automatisch vom Betriessystem eingerichtet 
wird oder manuell konfigurierbar ist. Den Hinweis auf die geringere 
Zuverlässigkeit nehme ich gerne an. Dennoch wäre es schön auf 
Steuerkabel verzichten zu können alleine um ein mögliches Stolpern zu 
verhindern. Der PC ist im Umkreis von ca. 10 m vom Endgerät entfernt.

Der dritte , für mich anonyme Ratgeber, scheint auch keine Probleme zu 
sehen. Mir ist aber nicht klar ob Windows dafür 3 unterschiedlkiche 
ComPorts einrichtet oder ob das BT Dongle die daten an alle BT 
-Teilnehmer schickt und die jeweiligen Endgeräte entwscheiden ob sie 
etwas mit den gesendeten Daten anfangen können.
Ich muss bei meiner Anwendung aufpassen dass die von den Endgeräten 
Antworten dem richtigen ComPort zugeordnet werden.
Die seriellen Protokolle der Endgeräte sind unterschiedlich. Der 
datenverkehr läuft jedoch mit dem RS232 protokoll.

Ich wäre dankbar wenn ich noch etwas klarer sehen könnte.

viele Grüße
Christian

von Frank K. (fchk)


Lesenswert?

Es gibt unterschiedliche Bluetooth-Module.

1. Es gibt welche mit SPP-Profil. Das sind die, die Du an einen 
Microcontroller anschließt. In dem Modul ist der komplette 
Bluetooth-Stack drin.

2. Es gibt welche mit HCI-Schnittstelle. Die USB-Bluetooth-Dongles sind 
in der Regel solche, aber es gibt auch welche mit UART oder SPI. In 
einem solchen Modul sind nur die unteren Bluetooth-Protokollschichten 
enthalten, die oberen müssen auf dem angeschlossenen Rechner laufen.

Wenn Du ein Modul gemäß (1) an einen PC anschließt, dann weiß der PC 
nichts vom Bluetooth, denn da macht das Modul die ganze Arbeit. Und das 
Modul stellt eben exakt eine SPP Verbindung bereit. Punkt.

Wenn Du ein Modul gemäß (2) hast, dann muss Windows (oder Linux) die 
virtuellen seriellen Ports bereitstellen, und je nach Bluetooth-Stack 
auf dem PC können das dann auch mehrere sein. Plus: es sind dann auch 
Sachen wie Audio oder HID oder so möglich.

Wenn ein PC Bluetooth schon fest eingebaut hat, ist es immer Typ 2. 
Ebenso beim Mac.

fchk

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
Noch kein Account? Hier anmelden.