MR2P - Bluetooth Module

rainer_r

Moderator
Bluetooth-Modul HC-05 / HC-06

Bei der anschlussfertige Version des HC-05/06 ist das BT-Modul auf einem Trägerboard aufgelötet und hat zusätzliche Bauteile (z.B: LED, Steckverb.). Dieses Modul habe ich an den MR2P-Mega angeschlossen und getestet. Das Modul HC-05 lässt sich, im Gegensatz zum HC-06, als BT- Master konfigurieren. Der Stecker hat 6 Pins (HC-06 4 Pins).
BT-HC-front.jpg

Der Key-Anschluss versetzt das Modul, bei +V, in den Programmier-Modus. Der State-Anschluss und die Funktionen der auf dem Modul befindliche LED ist von den FW-Version abhängig, kann aber i.d.R. wie folgt beschrieben werden :

-> Key-Pin 0V und das Modul wird danach mit Spannung versorgt = LED blinkt schnell
-> Key-Pin 0V und dann auf +V , AT-Cmds zulässig, nicht alle = LED blinkt schnell
-> Key-Pin 0V und das Modul wird gepaart = LED blinkt langsam
-> Key-Pin +V und das Modul wird danach mit Spannung versorgt = LED blinkt langsam
das ist der Programmier-Modus (alle AT-Cmds zugelassen)

-> Modul ist gepaart = LED blinkt langsam aber 2x kurz hintereinander

-> State-Pin 0V = nicht gepaart, +V = gepaart

Die Baudrate ist (orig.) 9600 und wird im Programmiermodus autom. auf 38400 erhöht.

Die Module haben eine interne Versorgungsspannung von +3,3V. Der Spannungs-Regler auf dem Modul lässt eine Versorgungsspannung von +5V zu. Die RX-TX Anschlüsse sind aber nur 3,3V verträglich. Ein korrekter Anschluß vom TX-Anschluss des Mega an den RX des Moduls sollte also über einen Spannungteiler erfolgen.
Siehe meine PDF im Anhang.

Mein HC-05 Modul (JY-MCU) hat noch eine Besonderheit, die mich unnötige ca. 4 Std gekostet hat: Der TX-Ausgang des Moduls benötigt einen Pullup-Widerstand (min. 1kOhm). Ohne diesen Widerstand war keine Kommunikation mit dem Modul möglich.

MR2P-15-Elektronik_Bluetooth.pdf
 
Hallo Rainer,

vielen Dank für Deine Ausführungen zum HC-05/06 (Adapterboard). Ich hatte mir die Module bisher nie so genau angesehen: Die Beschreibungen ("Arduino-compatible") und das Pinout (+5V Pin) suggerieren ja erstmal, dass man es direkt an den Arduino anschließen kann. Es kann zwar auf Anhieb funktionieren, oder es funktioniert nicht oder evtl. nicht lange...

(Im Datenblatt findet man zwar Hinweise, dass das reine BT-HC05 Modul auch mit 4.2 Volt betrieben werden kann und man könnte vermuten dass der RX-Eingang ebenfalls diese Spannung verträgt (bleiben also nur noch 0.8 Volt Toleranz) - aber das ist alles reine Spekulation...)

Die Frage ist also immer, ob der RX-Eingang 5V tolerant ist. Es gibt inzwischen Adapter-Boards bei welchen der RX-Eingang 5V tolerant ist.
Als Faustregel kann man wohl nur sagen: vorher einmal das eigene Adapter-Board messen (ob der RX Pin des Adapter-Boards direkt oder über Widerstand bzw. Spannungsteiler zum Bluetooth-Modul RX Pin geht).

Interessant ist, dass man evtl. auch Problem mit der TX-Leitung bekommen kann, wenn diese zu schwach ist (z.B. HIGH = 2.9V), der Arduino aber z.B. mindestens HIGH=3V (60% VCC) erwartet... http://www.fixkick.com/ELM327/tauru.../MPG/schematic/my red cards/Revised-HC-05.jpg
Gruss,
Alexander
 
Hallo Alexander,

die Frage ob der RX-Eingang eines BT-Moduls 5V tolerant ist lässt sich (bei den Module aus Ch sowieso) nicht sicher sagen. Ich würde deshalb immer zu dem Spannungsteiler raten (der unter deinem Link gezeigte RX Sp-Teiler ist mit zu hochohmig). Die Adapterboards aus Ch haben i.d.R keinen eingebauten SP-Teiler, alle schreiben "3,3V Level".

Viel "gemeiner" war bei mir die TX-Leitung, da ohne dem Pullup nur "gestörte" Bytes kamen. Erwartet hatte ich einen 3,3V CMOS Ausgang, also suchte ich erst einmmal den Fehler bei mir :angry:

Zu einem evt. TX-Ltg.-Problem: deshalb habe ich für die TX (RX) Leitung einen Leitungs-Puffer eingebaut.
 
Hallo,
auch ich habe mit dem 3,3V Pegel des HC-06 Probleme. Habe auch schon Pull up Widerstände dazwischen gebastelt. Erst 1k dann 2k und zum Schluss sogar mal 10k. Nichts funzt. Habe noch einen USB auf Serial Adapter den ich per Jumper von 5V auf 3,3V umstellen kann. Nur wenn er auf 5V gejumpert ist funktioniert der Sketch. Hat noch jemand eine Idee wie ich weiter komme?

:( :angry:


Gruß


Marc
 
Hallo Marc,
bitte schaue dir nochmal das Schaltbild auf der Seite 2 meiner PDF (hier ganz am Anfang) an.

Mit der da gezeigten Schaltung und Widerstandswerte muss es funktionieren.
Entspricht deine Schaltung der von mir Vorgeschlagenen?

Ein weiterer Test: hänge das Modul mit der gezeigten Beschaltung direkt an einen Mega z.B an Serial2 oder 3
Es gibt Testprogramme für das Modul die zeigen ob die Seriell-Kommunikation mit dem Modul überhaupt funktioniert.
 
Hallo Rainer,

das habe ich schon so gemacht und auch verstanden. Wollte dennoch nicht. Habe in meinem Keller noch einen Level Shifter von Waterott gefunden. Mit dem Funktioniert es einwandfrei. Danke für deine Hilfe.

Gruß

Marc
 
Und was muss ich tun um es an dem 1.0 Board zu betreiben? Bei dem alten war es ja anstecken, die Automatiche Configuration durchlaufen lassen und fertig.
 
Oben