Forum: Mikrocontroller und Digitale Elektronik Kommandomodus BTM-222


von P. F. (pfuhsy)


Lesenswert?

Hallo zusammen,

ich beschäftige ich mich seit einiger Zeit mit dem BTM-222, den ich über 
ein µC ansteuer.
Ich benutze folgene Befehle zur Konfiguration und Verbindung mit meinen 
Handy:

atz0      //reseten
atr0      //auf Master setzten
ato1      //Autoconnect ausschalten, sonst kann ich atf? nicht ausführen
atf?      //nach Teilnehmer suchen
atd=0123456789abc  //ID des Handys
ata      //Verbindung herstellen

Nun ist das Handy mit dem BTM-222 verbunden. Damit das Modul automatisch 
verbindet, sobald getrennt wurde, muss ich den 'ato' wieder auf '0' 
setzten. Das kann ich leider nicht zu Anfang machen, sonst kann ich den 
Befehl 'atf?' nicht ausführen, warum auch immer. Eine Änderung an den 
Einstellungen kann ich aber nur vornehmen, wenn sich das Modul im 
Kommandomodus befindet und das möchte ich nicht "per Hand" machen, 
sondern mit einem Befehl.
Jetzt hab ich in Zahlreichen Datenblätter und Foren gelesen, dass man 
das mit Senden von '+++' erreichen kann. Das funktioniert bei mir aber 
nicht. Die Einstellung für diese Funktion ist unter 'atx' ablegt und 
heisst nachdem reseten 'always check +++', also ist eingeschaltet.

Warum geht das bei mir nicht, wo ist mein Denkfehler, hat jemand eine 
Idee ?

Gruss

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Zwischen den 3 '+' muss eine Laufzeit von mindestens 500ms liegen.

von P. F. (pfuhsy)


Lesenswert?

Knut Ballhause schrieb:
> Zwischen den 3 '+' muss eine Laufzeit von mindestens 500ms liegen.

Die hab ich locker eingehalten. Funktioniert trotzdem nicht.

von Frank K. (fchk)


Lesenswert?

auch die Wartezeit davor und danach eingehalten?

fchk

von P. F. (pfuhsy)


Lesenswert?

Frank K. schrieb:
> auch die Wartezeit davor und danach eingehalten?

Ja, alles eingehalten.

- Datenmodus
- ein paar Sekunden gewartet
- '+', >ENTER< gesendet
- ca. 1s gewartet
- '+', >ENTER< gesendet
- ca. 1s gewartet
- '+', >ENTER< gesendet
- und gewartet (bis heute)

Ich habs auch mal mit direkt allen zeichen '+++' versucht. Funktioniert 
nicht.

von P. F. (pfuhsy)


Lesenswert?

Mal so ne blöde Frage: Von welcher Seite muss denn das '+++' kommen ?

Gruss

von P. F. (pfuhsy)


Lesenswert?

Ne, ihch hab jetzt beide Seiten ausprobiert, geht nicht.

Was mache ich falsch ??????

von Frank B. (frank501)


Lesenswert?

Peter F. schrieb:
> - Datenmodus
> - ein paar Sekunden gewartet
> - '+', >ENTER< gesendet
> - ca. 1s gewartet
> - '+', >ENTER< gesendet
> - ca. 1s gewartet
> - '+', >ENTER< gesendet
> - und gewartet (bis heute)

>Was mache ich falsch ??????

Das "Enter" gehört da nicht hin. Im Datenblatt steht "+++" und so muß es 
auch gesendet werden.

Frank

von P. F. (pfuhsy)


Lesenswert?

Hallo Frank,

danke für die Info. Anscheinend war ich zu ungeduldig. Danke funzt 
jetzt.

von P. F. (pfuhsy)


Lesenswert?

Achso, mit dem '+++' trennt er die Verbindung irgendwie komisch. Die 
Status-LED bleibt trotzdem dauerhaft an und das Handy merkt nichts 
davon. Wenn ich Befehle senden will kommt ein Error zurück. Wenn ich 
jetzt wieder 'atf?' sende, sagt mir erst jetzt das Handy das die 
Verbindung getrennt ist und die Status-LED blinkt wieder, ist das normal 
?
Ich dachte eigentlich, wenn ich das mit '+++' trenne, dann verhält er 
sich genauso als würde ich "zu Fuß" die Verbindung trenen. Und wie kann 
ich denn wieder verbinden, ich will ja nicht wieder mit 'atf?' suchen 
und verbinden und einfach ein 'ata' hinterher schieben funktioniert 
nicht.

Bin ich dafür einfach zu doof oder ist die Anleitung wirklich etwas 
dürftig ausgefallen ?


Gruss

von Karl H. (kbuchegg)


Lesenswert?

Peter F. schrieb:
> Achso, mit dem '+++' trennt er die Verbindung

Mit +++ trennt man keine Verbindung.
Mit +++ wird vom Datenmodus wieder zurück in den Kommandomodus 
geschaltet (eventuell noch ein Return nachschieben).

Danach kannst du wieder AT Kommandos absetzen und unter anderem die 
Verbindung auflegen lassen.


Hast du denn das alles nicht vorab mal händisch mit einem 
Terminalprogramm ausprobiert? Da sieht man doch am allerbesten wie ein 
Modem auf Kommandos reagiert. Einfach Modem an die serielle 
Schnittstelle, Hyperterminal aufmachen und Kommandos eingeben.

von P. F. (pfuhsy)


Lesenswert?

Karl heinz Buchegger schrieb:
> Hast du denn das alles nicht vorab mal händisch mit einem
> Terminalprogramm ausprobiert?

Hab ich. Ich probiere das grundsätzlich erstmal mit dem Hyperterminal 
aus und hinterher mit dem Handy.
Also eine komplette Trennung geht damit nicht ?

von Karl H. (kbuchegg)


Lesenswert?

Peter F. schrieb:
> Karl heinz Buchegger schrieb:
>> Hast du denn das alles nicht vorab mal händisch mit einem
>> Terminalprogramm ausprobiert?
>
> Hab ich. Ich probiere das grundsätzlich erstmal mit dem Hyperterminal
> aus und hinterher mit dem Handy.
> Also eine komplette Trennung geht damit nicht ?

Was sasgt dein Handbuch zu dem Thema?
Wenn du keines hast: Was sagen die Beschreibungen der 
Hayes-AT-Modemkommandos zu dem Thema (denn um die handelt es sich ganz 
offensichtlich)?

von Frank B. (frank501)


Lesenswert?

Peter F. schrieb:
> Achso, mit dem '+++' trennt er die Verbindung irgendwie komisch.

Mit "+++" wird die Verbindung garnicht getrennt. Das passiert erst mit 
einem ATH. Mit ATH0 kann man die suchbarkeit ausschalten und mit ATH1 
einschalten.



Karl heinz Buchegger schrieb:
> Was sasgt dein Handbuch zu dem Thema?
> Wenn du keines hast: Was sagen die Beschreibungen der
> Hayes-AT-Modemkommandos zu dem Thema (denn um die handelt es sich ganz
> offensichtlich)?

Nicht viel. Ich hantiere selbst ab und an mit dem BTM112 oder 222 rum. 
Und die Datasheets, welche ich bisher bekommen habe, sind zwar relativ 
dürftig, aber es wird eigentlich alles erklärt, was man wissen muß.

Aber wie weiter oben schon gesagt: mit "+++" wird keine Verbindung 
getrennt sondern wirklich nur in den Kommandomodus gewechselt, in dem 
man die AT-Befehle absetzen kann. Unter anderem eben auch zum Beenden 
der Verbindung.



Peter F. schrieb:
> Ich dachte eigentlich, wenn ich das mit '+++' trenne, dann verhält er
> sich genauso als würde ich "zu Fuß" die Verbindung trenen. Und wie kann
> ich denn wieder verbinden, ich will ja nicht wieder mit 'atf?' suchen
> und verbinden und einfach ein 'ata' hinterher schieben funktioniert
> nicht.

Mit ATA eine Verbindung aufbauen klappt nur dann ohne vorher zu 
discovern und das passende Device auszuwählen, wenn man vorher die 
Adresse mit ATD festgelegt hat.
Ansonsten muß man mit ATF die passende Adresse heraussuchen und kann 
dann mit ATA1 - ATA8 das Device auswählen.

Ich mache es meistens so, daß ich mit ATD eine Zieladresse fest vorgebe, 
da ich eh meistens nur zwei Geräte habe, die miteinander reden sollen. 
Dann brauche ich nicht bei jedem Einschalten zu discovern und erspare 
mir somit auch den zusätzlichen Aufwand die passende Gegenstelle erst 
heraus suchen zu müssen.


Was nicht in allen Datenblättern drinne steht: Mit ATI kann man sich die 
ganzen Einstellungen anzeigen lassen.

Frank

von Dennis B. (Gast)


Lesenswert?

Guten Abend.

Ich habe mir auch ein BTM-222 zugelegt. Nachdem ich es ordnungsgemäß 
angeschlossen habe (GND, Vcc(beide), Tx, Rx und ANT) kann ich es per 
Blauzahn finden mich aber nicht verbinden... Wenn ich jez per Comport 
"AT..." befehle senden will, dann werden die einfach 1:1 zurückgegeben 
:( Was mache ich falsch? Mir fällt jetzt sogut wie nichts mehr ein, 
woran das liegen könnte...

Bitte um Hilfe.

Dennis B.

von Bernhard S. (b_spitzer)


Lesenswert?

Die Rückgabe (= lokales Echo) ist per Default eingeschaltet. Mit ATE0 
schaltet man das ab.
Zum Verbinden vom PC aus muss man das (voreingestellte) BT-Passwort 1234 
nutzen. Eventuell ist das ja schon geändert worden. Mit ATP? frägt man 
das PW ab, mit ATP0 (null, nicht O) schaltet man das PW ab, mit ATP=4321 
setzt man das neue Passwort 4321.
Zwischen den einzelnen Zeichen sollte man auf dem Controller einige ms 
warten. Also nicht einfacht printf("ATP=4321"); absenden.
Zur einfacheren Konfiguration habe ich für meine BTM222-Module einen 
PC-Adapter gebastelt, auf die das BT-Modul aufgesteckt und dann per 
Terminal konfiguriert werden kann.

unn tschuess
Bernhard

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.