HC-06 Problem mit AT-Befehle

Gast #5022712
Lesenswert?

Hi.
Ich habe ein Problem mit dem Hc-06 BT Modul.
Ich nutze dieses:

http://www.ebay.de/itm/301703350188?_trksid=p2057872.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT

Und zwar möchte ich zwei BT Module verbinden .
Das Hc-05 als Master und das Hc-06 als Slave.
Nun benötige ich aber die Adresse des Hc-06 aber ich schaffe es nicht 
mit ihm seriell zu kommunizieren.
Nach einem AT-Befehl bekommen ich keine Bestätigung zurück (Ok).

Mein Code sieht so aus:

#include <SoftwareSerial.h>
SoftwareSerial mySerial(11, 10);
void setup() {
Serial.begin(9600);
mySerial.begin(9600);
}
void loop()
{
if (mySerial.available())
Serial.write(mySerial.read());
if (Serial.available())
mySerial.write(Serial.read());
}

Den EN (KEY) Pin am Modul habe ich mit 5V verbunden aber nichts ändert 
sich.

Ich wäre sehr froh wenn mir Jemand helfen könnte.

LG Leyla.
Gast #5022771
Lesenswert?

Ist Dir bekannt, dass beim HC-06 Modul alle Befehle NICHT mit einem 
Zeilenumbruch beendet werden dürfen?

Du sendest einfach nur "AT" und wartest dann auf Antwort. Wobei das bei 
vielen Terminal Programmen nicht mahcbar ist, da sie immer auf die Enter 
Taste warten und dann immer einen Umbruch senden. Mit Hammer Terminal 
kannst du es testen.

> Den EN (KEY) Pin am Modul habe ich mit 5V verbunden

Der muss beim HC-06 unbeschaltet oder Low sein. High löscht den 
gespeicherten Verbindungspartner.

Die nächste Frage wird vermutlich sein "Mein HC06 Modul antwortet immer 
mit ERROR". Das liegt daran, daß HC-05 und HC-06 völlig unterschiedliche 
Befehlssätze haben. Siehe http://stefanfrings.de/btm222/index.html
Gast #5022963
Lesenswert?

> Aber mit den AT Befehlen geht immer noch nix.

Dan zeichne doch mal auf, wie die AT Befehle von deinem Kopf zum Modul 
gelangen. Welche Komponenten befinden sich dazwischen, wie sind sie 
miteinander verbunden. Welche Software mit welchen Einstellungen?

Was GENAU sendest du, und welche Antwort erhälst du?

Und bitte gewöhne Dir an, unsere Rückfragen zu beantworten wenn Du 
vermeiden willst, dass wir uns abwenden und Dich alleine stehen lassen.

> mit der Bluetooth SSP App kann ich über das Handy kommunizieren

Wonmit immerhin sicher ist, dass das Modul keinen Totalschaden hat.
Gast #5023324
Lesenswert?

So ok,
Der Rx vom Modul ist am Pin 10 und der Tx am Pin 11 vom Arduino (rx Pin 
über Spannungsteiler).
Die Stromversorgung ist 5V.
Der Code ist wie schon oben angegeben.
So dann lade ich den Sketch hoch.
Der serielle-Monitor ist auf 9600 Baut und kein Zeilenende eingestellt.
Nun gebe ich nur "AT" in den seriellen-Monitor und geh auf "senden" aber 
empfange kein "Ok" oder dergleichen.

G. Leyla
Gast #5023375
Lesenswert?

Kontrolliere, ob der serielle Monitor überhaupt etwas sendet, wenn du 
die Enter Taste NICHT benutzt.

Anstelle einen Arduino einzuschleifen, bei dem Du nicht sicher bist, ob 
sein Programm Ok ist, könntest du auch mal einen USB-UART Adapter 
benutzen.

Anstelle vom seriellen Monitor könntest du Hammer Terminal benutzen.

Anstelle eines USB-UART könntest du den Mikrocontroller deines Arduino 
Boardes entfernen (oder mit Dauer-Reset daktivieren) und dann den 
USB-UART Chip deines Arduino Boardes direkt mit dem Bluetooth Modul 
verbinden.
Gast #5145643
Lesenswert?

Hmm.

Eigentlich müsste es funktionieren.

HC05 stromlos machen, dann das kleine Knöpfchen am HC05 drücken und 
festhalten. Jetzt wieder Spannung anlegen und danach Knöpfchen 
loslassen. Und dann bist du im Programmiermodus.

Dann im Terminal AT eingeben. Es müsste jetzt funktionieren.
Mit AT+ROLE=1 kommst du in den Mastermodus.

Danach wieder einfach den HC05 wieder aus und einschalten, er nimmt dann 
automatisch Vebindung auf zum HC06.

Gruss
#5145660
Lesenswert?

Leyla schrieb:
> Der Rx vom Modul ist am Pin 10 und der Tx am Pin 11 vom Arduino (rx Pin
> über Spannungsteiler).

Müsste es nicht genau umgekehrt sein?
Der Arduino arbeitet doch auf 5V, und das Modul mit 3.3V.
Dann sollte der Spannungsteiler den Arduino Ausgang (TX) auf für den 
Modul-Eingang (RX) kompatiblen Pegel bringen.

Generell ist für soetwas ein echter Leveltranslator besser.
Es ist nicht gesagt, dass ein 5V Input mit 3.3V Signalen klarkommt.

u.U müssen auch die pin modes für pin 10 und 11 noch konfiguriert werden 
(input/output).
https://www.arduino.cc/en/Reference/SoftwareSerialAvailable
Gast #5145849
Lesenswert?

Bezüglich des HC-05 kann ich mit sicherheit sagen, daß dessen 
Ausgangsspannung am Tx Pin ausreicht, um damit den Rx EIngang eines AVR 
anzusteuern.

Für die andere Richtung nutze ich meistens einen 2,2k Ohm 
Serienwiderstand in Kombination mit den ESD Schutzdioden im Innern des 
Bluetooth Moduls.
Gast #5146002
Lesenswert?

Wenn du du RX/TX vom Port 10/11 nimmst brauchst du keinen 
Spannungsteiler.

Nur wenn du den RX/TX Port nimmst der von der USB-SChnittstelle des 
Arduino benutzt wird muss du einen Spannungsteiler.

Gruss
Gast #5146019
Lesenswert?

> Wenn du du RX/TX vom Port 10/11 nimmst brauchst du keinen
> Spannungsteiler.

Woher weisst du, mit welchem Arduino Modell Leyla das Bluetooth Modul 
verbinden möchte? Diese Aussage trifft doch sicher nur auf Arduino 
Modelle zu, die mit 3,3V betrieben werden, weil sie mit 5V den Eingang 
des Bluetooth Moduls überlasten würden.
Gast #5318422
Lesenswert?

Hi,

ich hatte ein ähnliches Problem mit HC-06 Modulen und AT Befehlen. Ich 
hab schon mindestens 20 Stück von denen verbaut. Die AT Befehle gingen 
bisher immer ohne "Sowohl NL als auch CR" abzusetzen. Doch gerade habe 
ich welche da, die brauchen "Sowohl NL als auch CR" am Ende.

Gruß
André

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