Vielleicht auch ganz interessant: Eine OpenSource Alternativ-Firmware für BlueCore4-basierende Bluetooth Module: http://pfalcon-oe.blogspot.de/2012/04/opensource-sensor-node-firmware-for.html
Nabend zusammen, Ich habe eine Frage: was passiert, wenn im Datenstrom vom µC zum BTM222 zufällig mal "+++" in Folge kommt, Dann geht das BTM-222 ja ungewollt in den Command-Modus. Wie kann ich verhindern, dass nach drei "+" dies passiert? Muss ich immer selbst dafür sorgen, dass im Datenstrom diese drei Bytes niemals hintereinander vorkommen?
>was passiert, wenn im Datenstrom vom µC zum BTM222 zufällig mal "+++" in >Folge kommt, Dann geht das BTM-222 ja ungewollt in den Command-Modus. Soweit ich mich erinnere war das in Modemzeiten: - CR oder CR/LF - 3 Sekunden warten - drei "+++" Auf dieses "time guard interval" gab es sogar ein Patent von Hayes (in den 80er der TOP-Modemhersteller). Das Verfahren sollte auch im BTM222 drinne sein.
Tiramisu schrieb: >>was passiert, wenn im Datenstrom vom µC zum BTM222 zufällig mal "+++" in >>Folge kommt, Dann geht das BTM-222 ja ungewollt in den Command-Modus. > > Soweit ich mich erinnere war das in Modemzeiten: > - CR oder CR/LF > - 3 Sekunden warten > - drei "+++" > > Auf dieses "time guard interval" gab es sogar ein Patent > von Hayes (in den 80er der TOP-Modemhersteller). Das Verfahren > sollte auch im BTM222 drinne sein. Danke für den Hinweis. habs grade mal getestet. Wenn ich besagte Sekunden vor dem Senden der "+++" nichts gesendet habe, so geht das Modul in den Command-Modus. Dabei spielt es keine Rolle was vorher gesendet wurde, hauptsache die Pause ist da. also muss ich im Datenstrom darauf achten, dass vor den "+++" innerhalb einer gewissen zeit irgendein anderes Zeichen gesendet wurde. Hierbei spielen die Zeichen die nach den "+++" kommen keine Rolle. Das Modul geht immer in den Command-Modus, wenn irgendwo im Datenstrom vor den "+++" eine Pause auftritt. Muss man also drauf achten.
achso dann habe ich noch eine Frage: Wenn ich in den Command-Modus gesprungen bin, wie komme ich dann wieder zurück in den Daten-Modus?
An alle die es interessiert: mit ATX0 (steht nicht im Datenblatt) kann die escape Sequenz deaktiviert werden. Somit kann nun durch zufälliges "+++" im Datenstrom nichts mehr passieren! Gruß Schnuck
Thomas R. schrieb: > Indem du dafür sorgst, dass sich das Modul wieder connectet. habe nun den Befehl gefunden (der leider auch nicht im Datenblatt steht): ATO – Switch from command mode to data mode (valid only when connected)
Hallo Habe mich auch mal auf die Spuren des kabellosen programmierene gewagt, nun habe ich das Problem das sich mein BTM-222 nicht konfigurieren lässt, ich habe mal meine Datei angehängt wie ich es mittels Mikrocontroller angeschlossen habe, die Spannung von RX und TX habe ich mittels Spannungsteiler probiert anzupassen, mit der Status LED schaue ich ob eine Verbindung besteht die blinkt dauernd. Vielleicht könnte mir ja wer weiterhelfen, ob ich nicht einen kompletten blödsinn aufgebaut habe. Mit freundlichen Grüßen beno
Wenn dein µC mit 5V versorgt wird dann funktioniert der Spannungsteiler nur für den Ausgang des µC. Für die andere Richtung brauchst du einen Levelshifter von 3,3 auf 5V. Dazu gibt es versch. Schaltungen, google mal danach. Am besten beide mit 3,3V versorgen, das bringt die wenigsten Probleme. Holger
Danke für deine schnelle Antwort werde mal danach schauen weißt du ob ich dann ganz normal mit einem Hyperterminal die kommunikation versuchen kann.
Nein, der PC hat noch andere Pegel, dort brauchst du auf jeden Fall eine Anpassung !
Schnuck schrieb: > Danke für den Hinweis. > > habs grade mal getestet. Wenn ich besagte Sekunden vor dem Senden der > "+++" nichts gesendet habe, so geht das Modul in den Command-Modus. > Dabei spielt es keine Rolle was vorher gesendet wurde, hauptsache die > Pause ist da. > > also muss ich im Datenstrom darauf achten, dass vor den "+++" innerhalb > einer gewissen zeit irgendein anderes Zeichen gesendet wurde. Hierbei > spielen die Zeichen die nach den "+++" kommen keine Rolle. Das Modul > geht immer in den Command-Modus, wenn irgendwo im Datenstrom vor den > "+++" eine Pause auftritt. > > Muss man also drauf achten. Am einfachten ist es, dafür zu sorgen, dass "+++" nicht vorkommt, indem du z.B. vor jedem '+', das gesendet wird, ein Escapezeichen einfügst (der Empfänger muss dieses natürlich erkennen und entfernen). Aus "+++" im Nutzdatenstrom wird z.B. "\+\+\+". DEr Empfänger ersetzt "\+" dann wieder durch '+'.
Ich habe zur Kontrolle ob eine Verbindung besteht eine LED auf Pin 13 gehängt wen es erkannt wurde blinkt die LED sehr schnell, jetzt habe ich aber das Problem das LED langsemer blinkt und der Computer mein BTM-222 Modul nicht mehr kennt, ist es nun defekt oder habe ich da ein anderes Problem. Mit freundlichen Grüßen beno
Hast du denn schon AT Befehle gesendet oder noch nicht ? Handy hat meines gefunden "serial adapter" und konnte sich verbinden. Es blinkte aber weiter, erst die Umschlatung auf Autoconnect/Master im BTM ließ eine richtige Verbindung zu und die LED leuchtet dauerhaft. Holger
ich hatte vorher noch mein Bluetooth Modul gesehen habe es dann verbunden musst den PIN Code eingeben und wie ich es dann abgehängt hatte und nachher wieder weiter arbeiten wollte fand der Computer die Bluetooth Schnittstelle nicht mehr. Soweit das ich AT Befehle eingeben kann bin ich auch noch nicht gekommen, weil es leider noch nicht so funktioniert wie ich es mir Vorstelle beno
Ich habe es dann mit einem zweiten BTM probiert das hat er wieder gefunden nur das mit der Konfiguaration bekomme ich einfach nicht hin
Hast du denn jetzt einen µC /PC direkt am Modul ? Von dort aus kannst du es konfigurieren, über Bluetooth wird das nicht funktionieren. Holger
Ich wollte es eigentlich mit meinem Arduino Port konfigurieren komme aber nicht so richtig hin, es geht ja nur über die Serielle Schnittstelle oder
So ist das. Aber du musst das auf diesen Weg lösen, wie willst du sonst eine Verbindung hinbekommen oder Daten übertragen ?
Mit einem USB zu Serial Wandler werde ich es versuchen, kann es vielleicht sein das ich es dann über das Terminal noch finde wen es mein Bluetooth Stick nicht erkennt. Ich hoffe ich gehe dir nicht auf die Nerven mit meinen Fragen
Den was ich da habe ist das FTDI Basic Breakout 3,3V das müsste doch auch funktionieren ohne das ich dann einen Levelshifter brauch oder
Ich werde es morgen mal Versuchen danke für deine Hilfe erstamla. Wünsch dir noch einen schönen Abend.
Jetzt kann ich schon mal mit dem Gerät kommunizieren aber er erkennt es nicht mehr als Bluetooth Gerät in seiner Umgebung kann es vielleicht sein das irgendwas zerstört ist?
Endlich habe ich es hinbekommen. Eine Frage habe ich nun noch kann ich dann ganz normal Daten von einem BTM-222 Modul welches am Mikrocontroller angeschlossen ist auf deem PC oder auf einen Mikrocontroller übertragen.
> Endlich habe ich es hinbekommen. Eine Frage habe ich nun noch kann ich > dann ganz normal Daten von einem BTM-222 Modul welches am > Mikrocontroller angeschlossen ist auf deem PC oder auf einen > Mikrocontroller übertragen. Selbstverständlich :-) Dein PC legt nach Verbindung eine virtuelle COM-Schnittstelle an (also diese RS232 Schnittstellen) die du dann z.B per Terminalprogramm öffnen u. ansprechen kannst.
Super danke für die schnelle Antwort freue mich voll das ich es nach langen Stunden endlich geschaftt habe.
Hallo habe wieder mal eine Frage wegen der Übertragung vom Mikrocontroller zu einem Hyperterminal. Habe das BTM als Slave konfiguriert und will jetzt die Daten auf ein Hyperterminal übertragen habe die Baudraten schon kontrolliert die sind richtig aber jetzt kommen nur so komische Zeichen an und nicht das was ich eigentlich senden will. Hat jemand vielleicht eine Ahnung Vielen Dank
Hallo, wenn ich einen Befehl an den BTM222 sende (über seinen RX Eingang) wird das gleiche Signal vom BTM222 wieder zurückgesendet. Am Scope kann ich erkennen, dass es wirklich eine Antwort vom BTM222 ist, und kein Kurzschluss zwischen RX und TX des FT232. Nach Absenden des Befehls antwortet das Modul etwas 6 ms später mit dem ersten Zeichen, während die letzten Zeichen nach insgesamt etwa 30 ms verschickt werden. Leider lässt sich das Modul auch nicht in den Befehlsmodus wechseln. Es wird alles zurückgespiegelt, was ich sende. Es hilft weder '+++', noch 'AT+++'. Kann mir jemand erklären wie das sein kann? Bei Datenraten ungleich 19200 bps können die empfangenen Daten am FT232 auch nicht interpretiert werden. Aber wieso wechselt er nicht in den Befehlsmodus? Vielen Dank im Voraus!
Nein. Im Datenblatt steht, dass das Modul beim +++ Befehl in den Befehlsmodus wechselt und das tut es nicht. Deine Antwort war überflüssig.
Hast du dir das Datenblatt überhaupt mal angesehen oder sagst du einfach nur pauschal dass das Datenblatt hilft? Das Modul macht nicht das, was im Datenblatt steht. Da ist ein "guck ins Datenblatt" nunmal nicht hilfreich. Da müsstest du mir schon ne nähere Info geben.
Okay, hab's gecheckt. Die 13 hat als letztes Zeichen gefehlt. Modul ist jetzt im Kommandomodus. Trotzdem danke!
Tim schrieb im Beitrag #3359726
> Die 13 hat als letztes Zeichen gefehlt.
wo stand das denn? ^^
hättest du wenigstens geschrieben, was du genau geschickt hast, hätte
man dir helfen können. aber einfach "geht nicht so" zu schreiben, ist
einfach unklug...
Ich denke schon, dass ich die "Symptome" ausreichend beschrieben habe. Ich habe geschrieben, dass ich '+++' und 'AT+++' gesendet habe. ;-) Beides wurde gespiegelt. Logische Abhilfe => es fehlt die binäre 13. Und dies ist darüber hinaus NICHT im Datenblatt zu finden. Zumindest nicht in diesem: http://www.mikrocontroller.net/wikifiles/f/fc/BTM222_DataSheet.pdf
Hallo nochmal, ich scheitere jetzt leider an einer Verbindung zwischen meinem Motorola Defy Plus und dem BTM222. Das Modul wird in den Bluetooth-Einstellungen gefunden. Wenn ich mich mit dem Modul verbinden möchte, erscheint nach der Eingabe der PIN unter dem gefundenen Bluetooth-Gerät: "Gepaart, jedoch nicht verbunden" Ich habe folgendes probiert: - Smartphone "sichtbar" schalten - Smartphone und BTM222 neustarten - BTM222 in Slave / Mastermodus gesetzt Im Mastermodus werden Geräte aus der Nachbarschaft gefunden, jedoch nicht mein Smartphone. Ich habe auch schon überlegt, ob sich die Profile nicht vertragen. Das BTM222 kann ja angeblich folgende Profile: SPP,HSP/HFP,HID,HC. Wenn ich mir Informationen mit ATI1 anzeigen lasse, wird unter anderem folgendes ausgegeben: "ATR=1, SPP SLAVE ROLE" Das Modul scheint also defaultmäßig das SPP Profil zu verwenden, welches vom Defy Plus auch nach Datenblatt unterstützt wird. Hat jemand vielleicht noch eine Idee, warum keine Verbindung aufgebaut werden kann? Vielen Dank! PS: Die Firmwareversion ist 6.26
Wenn Du vom Smartphone auf den BTM zugreifen willst, brauchst Du am BTM rein gar nichts einstellen. Einfach mit Spannung versorgen und per BT werden die seriellen Daten am BTM übertragen.
Hallo Florian, danke für deine Antwort! Dann wird es wohl an meinem Smartphone liegen. Werd' es mal mit nem anderen probieren. Danke nochmal!
Hallo nochmal, ich habe es jetzt mal mit einem anderen Smartphone ausprobiert (Nexus 5) und das Problem ist immernoch dasselbe. "Gepaart, jedoch nicht verbunden". Mit einem Bluetooth Dongle funktioniert die Verbindung komplett. Daten können von beiden Seiten aus versendet werden und kommen an der anderen Seite an. Das Problem hat doch bestimmt was mit diesem SSP Profil zu tun oder? Hat jemand eine Idee was ich tun kann? Bei vielen Leuten scheint eine Verbindung zwischen Smartphone und BTM222 ja ohne Probleme zu funktionieren.
Okay, anscheinend ist es normal, dass das Smartphone mit dem BTM222 nicht verbunden ist. Mit der Bluetooth Chat App von Google kann ich in beide Richtungen senden und empfangen, obwohl das Smartphone mit dem BTM222 offiziell nicht verbunden ist.
Hallo Leute, ich bin auf der Suche nach einem Bluetooth-Modul, das mir Daten von einem ADC über SPI an den PC sendet. Der ADC (ADS1299) hat eine SPI-Schnittstelle, an die ich eben gerne direkt ein Bluetoothmodul anbinden möchte. Ich habe schon in einigen Threads (inkl. diesem hier) gelesen, dass SPI nur für Firmwareupdates genutzt werden kann. Ist das nach wie vor so oder gibt es schon eine neue Firmware, mit der man Daten an das BTM222 über SPI senden kann? Falls nicht könnte man natürlich einen µC als Interface zwischen SPI und UART verwenden. Aber gibt's da vielleicht eine elegantere Lösung? LG Andi
(Gelöscht und neues Topic erstellt, habe die entsprechende Forums-Meldung erst zu spät gesehen, sorry ;) ).
:
Bearbeitet durch User
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.