Ich bin gerade dabei, mich mit Bluetooth etwas vertrauter zu machen, und stecke dabei fest
Was ich geschafft habe:
Das Modul mit Serial1 vom Mega verbunden (blinkt rot).
Sketch zum Setzen der PIN und Echo aller ankommenden Zeichen auf Serial (-->Serial Monitor) geladen. Serial Monitor zeigt "OK" und "OKsetPIN" an.
Im Bluetooth-Manager Gerät HC-06 gefunden und PIN eingegeben (zeigt "HC-06 offline").
Im Gerätemanager zwei neue COM Schnittstellen (5 und 6) gefunden.
Soweit scheint alles zu funktionieren. Nun möchte ich Daten übertragen, habe dazu PuTTY installiert.
PuTTY auf Serial mit COM5 und COM6 geöffnet, nimmt keine Eingaben an, kein Echo im Serial Monitor
Einige Zeit später:
Sketch geändert auf Echo in beiden Richtungen - jetzt geht's
Trotzdem bleiben ein paar Fragen:
Was passiert beim Reset des Arduino (Programmänderung...)? Wird die vorherige PIN weiterbenutzt, muß ich jedesmal das Gerät aus der Liste rauswerfen und neu eintragen?
Was ist mindestens notwendig, um eine Verbinung herzustellen?
Was ist der Unterschied zwischen COM5 und COM6? (COM5 funktioniert, COM6 nicht?)
Wie unterscheidet das Modul echte AT-Kommandos von Texten, die zufällig "AT" enthalten?
Hm also beim HC-05 der auch als Master verwendet werden kann wird der PIN gespeichert und der verbindet sich automatisch sobald die Spannungsversorgung vorhanden ist. Glaube beim HC-06 muss die Verbindung wieder gestartet werden wobei ich nicht weiß ob der PIN behalten wird.
Unterschieden wird da bei den AT Befehlen nicht. das AT muss halt immer am Anfang stehen und ich glaube das es schon ein großer Zufall wäre wenn ein normaler Text mit den Zeichen AT+ anfängt.
Hab diese Module auch. Hab damals ne kleine Lib für mich geschrieben. Hab die beiden Dateien mal angehängt :). Für Android gibts tolle Apps um Daten zu senden oder zu empfangen... hab damals diese hier benutzt um die Verbindung zu testen: https://play.google.com/store/apps/details?id=Qwerty.BluetoothTerminal
Hier noch nen BeispielCode:
CBlueTooth_HS bluetooth(1, 22, 23, 115200); //HardwareSerialNumber (MEGA has 3 HW_Serails, 1-3), keyPin (or Pin34 of HC05/HC06 Modul)[Optional], enablePin[Optional], baudrate[optional], default = 9600
//init Bluetooth (in Setup() Funktion)
//Konfigurieren des Bluetooth moduls
bluetooth.enterCommandMode();
bluetooth.sendCommand("AT+NAME=RoboCar");
bluetooth.sendCommand("AT+PSWD=1234");
bluetooth.sendCommand("AT+UART=115200,1,0");
bluetooth.sendCommand("AT+NAME?"); //Einstellung abfragen. Antwort scheint im Speicher des HC0X gespeichert zu werden bis man die Daten abruft ...auch wenn man den CommandMode verlässt
bluetooth.sendCommand("AT+UART?");
bluetooth.exitCommandMode();
//Daten lesen z.B. die momentanen Bluetootheinstellungen ausgeben
Serial.println("Einstellungen:");
String info = "";
char puffer;
while (bluetooth.readData(puffer)){ //Einzelne Chars zu einem String zusammenbauen
info += String(puffer);
}
Serial.println(info);
//Daten senden
bluetooth.sendData("Hello World");
Für den PC habe ich mir auch mal ne Lib zusammengestellt um Daten zwischen Modul und PC zu senden und empfangen. Der Code und das Bluetooth-Testtool ist in der angehängten zip Datei.
Wo hast Du denn all die Informationen herbekommen?
Mein Modul nennt sich Keyes BT_BOARD V20, aber damit bin ich nicht weitergekommen. Es hat zwar 6 Lötaugen, aber nur einen 4-poligen Stecker, ohne KEY und STATE. Da nichts von wegen HC-05 oder HC-06 draufsteht, habe ich vermutet, daß das Board beides kann, je nach Bestückung/Firmware.
Heute funktioniert mein Board nur mit COM6, nicht mehr mit COM5 - grrrrr
Hmm, ob das was damit zu tun hat, ob sich das Board als HC-05 oder HC-06 fühlt?
Patrick_123:
Hast du nen Link zu dem Modul oder gar nen Bild davon?
Weder Link noch Bild
Es sieht diesem sehr ähnlich.
Ich hab's letztes Jahr im Kaufrausch mit eingepackt, weil mir die Bezeichnung aus dem Forum irgendwie bekannt vorkam. Immerhin weiß ich jetzt, daß es funktioniert, und daß ich kaum Verwendung dafür habe, solange der Verbindungsaufbau so sperrig ist.
Das Layout ist aber leicht unterschiedlich, ebenso der Aufdruck auf der Unterseite. Sogar die Belegung des 6. Pins kann unterschiedlich sein, bei meinem steht da STATE.
Danke, das erste Dokument sieht recht ordentlich aus. Im zweiten finde ich etliche Unterschiede zu meinem HC-05, aber doch einige interessante Ansatzpunkte für weitere Untersuchungen.