Forum: Mikrocontroller und Digitale Elektronik SMS Versand, Siemens SL55


von Tino K. (blumengiesser)


Lesenswert?

Moin.

Ich experimenteire mit dem Versand von SMS mit dem Siemens SL55 Telefon, 
wie es im embedded journal 8 empfohlen wird 
(http://www.mikrocontroller.net/articles/Versenden_von_SMS_mittels_Mobiltelefon). 
Erstmal wollte ich nur per hterm testen aber das klappt nicht so recht. 
Ich kann mit dem Befehl: at+cmgs=22 eine Verbindung zum Telefon 
aufbauen, es reagiert mit ">" ist also zum empfang von Nachrichten 
bereit. Diese dann aber zu versenden scheiter. Es wird immer 
zurückgegeben "+CMS ERROR 500". Der Error 500 bedeutet unknown Error. 
Der PDU string ist einmal der aus dem tutorial kopiert, sowie auch aus 
den online Decoder 
(http://twit88.com/home/utility/sms-pdu-encode-decode) sowie auch der 
code, den man per PDUspy als gesendete SMS auslesen kann. Eingeben tue 
ich ihn im hterm als HEX.

Wer kann mir sagen, warum das nicht geht? Oder was muss im hterm anders 
gemacht werden als im PDUspy.

Übrigens: Eine SMS per PDUspy senden funktioniert auch...

von Tino K. (blumengiesser)


Lesenswert?

Ich hab's. Die einzelnen PDU "Hex Zahlen" müssen nicht als Hex Zahlen 
versand werden, sondern als Dezimalzahlen. Sowas auch..!

von Florian (Gast)


Lesenswert?

hey,

ich habe mich auch mal an der Kommunikation mit dem SL55 versucht. 
Allerdings bekomme ich keine Antworten. Ich nutze hterm mit 19200 Baud 
8N1. Ich habe es über ein serielles Verbindungskabel (im Anschluss RS232 
to USB Converter) und mit 2 USB Kabeln veruscht. Bei den USB Kabeln 
erscheint beim Handy, nach Verbindungsaufbau mit hterm immerhin mal ein 
TTY oben. Sonst keine Reaktion/ Antworten... Muss ich noch irgendwelche 
Einstellungen treffen?

Vielen Dank und Grüße
Florian

von Sepp (Gast)


Lesenswert?

hey,

@Florian: konntest du dein Problem mittlerweile lösen?

ich selbst hab ein ganz ähnliches Problem:
Am SL55 wird sporadisch TTY angezeigt.

Das Gerät selbst sendet fortwährend \0 (in hterm angezeigt). PDUSPY kann 
keine Verbindung mit dem SL55 aufbauen. Auf AT-Commands (mit hterm 
gesendet) reagiert das Gerät auch nicht...

Muss man wirklich am Gerät noch irgendwelche Einstellungen vornehmen, 
damit eine Verbindung aufgebaut werden kann?

Vielen Dank und Grüße
Oliver

von Tino K. (blumengiesser)


Lesenswert?

hi,

am gerät braucht man meines wissens nichts machen. alles hat zu anfang 
natürlich nicht funktioniert, aber es lag nicht an der hardware. wie 
sieht denn deine verkabelung aus? sendest du über usb->seral port oder 
direkt über serial port? wie kommt das signal am telefon an? COM Port 
auf den richtigen wert gesetzt?

Tino

von Sepp (Gast)


Lesenswert?

Hallo Tino,

es freut mich, dass du mir geantwortet hast (zumal der thread ja schon 
ein wenig eingestaubt ist).

Zur Verbindung:
Ich verwende einen USB-Serial Adapter mit Prolific Chipsatz, dazu dann 
das RS232 Kabel von Siemens.

Soweit ich dies beurteilen kann, ist der COM-Port richtig konfiguriert.
Baud: 19200, 8N1.

Was mich persönlich etwas stutzig macht, ist die Tatsache, dass das 
Handy nicht immer TTY anzeigt, wenn das Datenkabel eingesteckt ist.

Eventuell ist einfach irgendwo ein Wachelkontakt...
Kannst du mir vielleicht sagen, ob dein SL55 fortwährend TTY anzeigt 
(zwischen dem Zeichen für die Qualität der Verbindung und der 
Batterieanzeige), oder ob die Anzeige dieses Zeichens auch bei dir nur 
sporadisch ist?

Danke für deine Hilfe
lg
Oliver

von Jens G. (jensig)


Lesenswert?

@Sepp
>Zur Verbindung:
>Ich verwende einen USB-Serial Adapter mit Prolific Chipsatz, dazu dann
>das RS232 Kabel von Siemens.

Nur mal, um meinen Senf dazu zu geben, auch wenn ich SL55+PDUSPY+hterm 
nicht kenne:
mit solchen USB-Serial-Wandlern scheint es manchmal generell gewisse 
Probleme zu geben. Und zwar dann, wenn eine Software ein spezielles 
Protokoll über die RS-232-Leitung sprechen will. Beim 
SL55+PDUSPY+hterm-Gespann kann ich das zwar jetzt nicht wissen. Aber ich 
hatte mal vor kurzem einen über die serielle Schnittstelle 
anzusprechenden ADC gebaut (für'n Kumpel), und der ging wunderbar über 
eine echte RS-232, aber nur eingeschränkt über einen solchen Adapter. 
Wenn man versucht, die einzelnen Datenleitungen direkt anzusprechen über 
die entsprechende Windows-API, dann hatte jeder API-Aufruf rund 7ms 
gedauert, was dann gewisse Geräte verwirren lassen kann. Zufälligerweise 
war das bei mir auch ein Prolific-Adapter. Hatte mal irgendwo hier im 
Forum gelesen, daß Prolific generell für schlechte Treiberqualität 
steht, was ich bestätigen kann (mit den Original-Treibern ging anfangs 
gar nix so richtig, auch ein normales Analogmodem nicht)
Da aber hier von 19200 Baud und 8N1 gesprochen wurde, vermute ich mal, 
daß hier das "normale RS-232-Protokoll" genutzt wird. Insofern ist mein 
Hinweis vielleicht nicht so ganz passend. Wollte aber trotzdem drauf 
hinweisen, daß solche Adapter gelegentlich mit Vorsicht zu geniesen 
sind. Ich würde also raten, es mal mit einem Rechner mit "echter RS-232" 
zu testen. Und wenn es denn der Adapter sein soll, dann die neuesten 
Treiber bei Prolific rauskramen - meiner funktioniert damit zumindest im 
Modembetrieb zuverlässig.

von Sepp (Gast)


Lesenswert?

@Jens:

Danke für deinen Hinweis hinsichtlich der USB-RS232 Adapter.

Ich muss dir wirklich zustimmen, die Mehrheit dieser Adapter scheint 
tatsächlich ein tückisches Eigenleben zu besitzen.

Lustig, dass du auch so schlechte Erfahrungen mit den Prolific-Adaptern 
gemacht hast.
Ich selbst hatte kürzlich eine Anwendung, wo von einem µC Daten per UART 
an Excel übertragen wurden. Über den Adapter mit Prolific-Chipset konnte 
keine Verbindung hergestellt werden (obwohl die Datenpakete in teraterm 
sauber empfangen wurden). Mit einem Adapter mit FTDI-Chipset hat die 
Kommunikation in Excel sofort funktioniert (leider habe ich diesen 
Adapter an den "Kunden" weitergegeben).

Allgemein scheint es so, dass USB-RS232 Adapter mit FTDI-Chipsatz noch 
am gutmütigsten sind (u.a. verbaut in Digitus Adaptern).

Ein Computer mit "echter" RS232 Schnittstelle steht mir leider nicht zur 
Verfügung -- ich habe mir aber wieder einen FTDI-Adapter bestellt.

lg
Oliver

von Jens G. (jensig)


Lesenswert?

>Ein Computer mit "echter" RS232 Schnittstelle steht mir leider nicht zur
>Verfügung -- ich habe mir aber wieder einen FTDI-Adapter bestellt.

Ja - die Computer mit echter RS-232 werden langsam rar. Aber mal einen 
anderen Adapter von einem anderen Hersteller sollte schon einen Versuch 
wert sein (schon mal den neuesten Treiber für den Prolific 
runtergeladen?).

von Sepp (Gast)


Lesenswert?

@ Jens:

Das Adapterkabel selbst ist von Lindy.
Auf der Homepage dieses Herstellers hab ich den aktuellen Treiber für 
dieses Adapterkabel heruntergeladen.

Bei Prolific selbst hab' ich allerdings keinen Treiber heruntergeladen. 
Das werde ich aber morgen nachholen, danke für den Tipp.

von Tino K. (blumengiesser)


Lesenswert?

Hier noch ein Tip: Überprüf doch mal ob das Datenkabel wirklich richtig 
sendet. Dazu kannst du am Kabelstecker, der der ans Telefon rankommt, 
den Rx und den Tx pin verbinden und dann per hterm irgendwas senden 
(ohne es dann an das Telefon zu stöpseln). Das sollte dann sofort auch 
wieder ankommen. Dann siehst du ob überhaupt das Kabel mit all den 
treibern funktioniert...

Und?

von Sepp (Gast)


Lesenswert?

Hi,

Ich hab jetzt das mit der Verbindung zwischen RX und TX am Datenkabel 
ausprobiert. Gesendete Zeichen wurden NICHT wieder empfangen.

Daraufhin hab ich am USB-RS232 Adapter RX und TX kurzgeschlossen, dieses 
Echo wurde tadellos empfangen.

Ich hab dann versucht am Datenkabel den Datenstrom zu oszillografieren. 
An keinem Pin wurde irgendwas angezeigt. Nur GND konnte ich mittels 
Durchgangsprüfer bestätigen.

Daraufhin hab ich den Datenstecker geöffnet, wobei mir nix 
außergewöhnliches aufgefallen wäre. Interessanterweise wurde ab dann das 
Datenkabel vom Telefon immer erkannt (nachzupürüfen mit *#06# -> Info).

Wenn ich dann mit hterm ein Zeichen an das Telefon gesendet habe, kam 
tatsächlich ein Auto-Echo vom Handy zurück.

Gesendete AT-Commandos kommen zwar auch als Echo zurück, werden vom 
Telefon aber immer mit ERROR quittiert (nach 40s Wartezeit).
Wenn man das Handy anruft, wird in hterm RING angezeigt.

Ich warte mal auf den neuen USB-Serial Adapter...
Sollte derweil irgendjemand eine Idee haben, warum Kommandos mit ERROR 
quittiert werden, das RING-Signal aber korrekt übertrgen wird, würde ich 
mich sehr freuen.

lg
Oliver

von Tino K. (blumengiesser)


Lesenswert?

Oliver,

gib mal im hterm "at+cmgs=22" ein, Typ ASCII. Stelle "Send on Enter" auf 
CR und drücke in der Datenzeile Enter. Dann werden die Befehle an das 
Telefon geschickt und es gibt ans hterm ">" zurück. Das hat bei mir auch 
auf anhieb geklappt gehabt. Dann wird der PDU Stream auch als ASCII 
gesendet ohne das CR mit dem Ende "subst" = dec 26.

Hier mal mein controler mit dem Telefon kommuniziert

uart_puts("at+cmgs=22");
uart_putc(0x0A);
uart_putc(0x0D);
_delay_ms(500);

uart_puts("0001000C8110672253834200000AC8309BFD065DCB6C3A");
uart_putc(0x1A);

Die PDU Message ist natürlich für mein Telefon kodiert, aber mit den PDU 
string convertern (siehe oben) kannst deine eigene nummer kodieren...

Alles klar?
Tino

von Sepp (Gast)


Lesenswert?

@Tino:

Ich habe heute meinen neuen USB-RS232 Adapter erhalten und gleich 
ausprobiert.
Jetzt funktioniert alles einwandfrei.

Ich möchte dir ganz herzlich für deine Hilfe danken. Ohne dich hätte ich 
wohl noch lange gebraucht, bis alles funktioniert.

lg
Oliver

von Tino K. (blumengiesser)


Lesenswert?

dafür sind doch Foren da...

von fx880 (Gast)


Lesenswert?

Am Rande ein kleiner Hinweis zu diesen USB-RS232 Adaptern. Dienstlich 
haben wir reichlich mit alten RS232-Schnittstellen zu tun und sind 
gezwungen irgendwie einen Weg zu finden, diese auch zu nutzen. Auf den 
ertsen Blick scheinen diese kleinen USB-Teile sehr praktisch zu sein, 
jedoch bringen sie nicht das mit, was sie sollte. 90% aller Adapter, die 
wir ausprobiert haben funtkionieren in der Regel nur selten. Nach 
eingehenden Untersuchungen fand sich endlich das Problem. Im seltensten 
Fall haben diese Adapter ein Step-Up-Wandler integriert, welcher die 9V 
Pegel für die echte RS232 liefert. Da sehr viele Geräte auf diese 
Spannung setzen, um div. nachfolgenden Schaltungen mit Spannung zu 
versorgen, kann es vorkommen, dass die üblichen 5V aus dem USB nicht 
ausreichen. Es kann auch vorkommen, dass die Stromstärke nicht 
ausreichend ist. Wenn man wirklich etwas vernünftiges haben will, sollte 
man sich einen USB-Adapter besorgen, welcher optisch getrennt ist und 
ein separates Netzteil hat. Diese Teile nehmen wir auch und diese 
funktionieren dann. Der Meilhaus RedCOM USB-COMI USB 1.1 an RS422/485 
bei Conrad-Elektronik ist so ein Teil. Leider ist der Preis recht hoch. 
Es gibt auch noch bessere, jedoch geht es dann auch mal schnell in den 
dreistelligen Bereich.

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.