Forum: Mikrocontroller und Digitale Elektronik Probleme mit dem einwählen in ein Mobilfunknetz mittel SIM 800L Modem


von Chris T. (christian_s987)


Lesenswert?

Hallo zusammen,

ich bin gerade dabei ein Projekt mit einem SIM 800L Modem zu 
realisieren, leider scheitert es schon mit dem einwählen in ein 
Mobilfunknetz. (Die LED blinkt schnell)
Als erstes habe ich es mit folgendem Modem versucht:

https://www.amazon.de/MagiDeal-Sim800l-Quadband-Antenne-Arduino/dp/B01FQPLG9W/ref=sr_1_2?ie=UTF8&qid=1498759517&sr=8-2&keywords=sim800l

Leider gab es wie schon oben erwähnt ein Problem mit der Registrierung 
in ein Netz. Meine Recherchen haben ergeben, dass die 
Spannungsversorgung mit unter ein Problem sein kann. Ich möchte das 
Modem direkt am Arduino UNO betreiben, weshalb ich mich für 
nachfolgendes Modem entschieden habe, welches über einen 5V Anschluss 
verfügt. Leider besteht auch hier weiterhin der Fehler.

http://www.ebay.de/itm/DE-Lager-SIM800L-GPRS-GSM-MODUL-QUAD-BAND-mit-hochwertiger-Antenne-Arduino-/172393607239?hash=item282375b047:g:o3oAAOSwsW9Y0jSb

Um auszuschließen, dass es an der SIM Karte liegt, habe ich folgende 
zwei SIM Karten ausprobiert:

-  SIM Karte von Ja! Mobil (D1 Netz)
-  SIM Karte von Aldi Talk (O2 oder E-Plus)

Beide Karten funktionieren einwandfrei in einem Smartphone.
Als nächstes habe ich es bei beiden Karten jeweils mit und ohne SIM Pin 
versucht, das Problem besteht nach wie vor. Auch zwei unterschiedliche 
Baudraten brachten kein Erfolg.

-  Baudrate 9600
-  Baudrate 19200

Angeschlossen wurden beide Modems wie folgt:

SIM800L VCC = Arduino UNO 5V
SIM800L GND = Arduino UNO GND
SIM800L = Arduino UNO TX Pin 10
SIM800L = Arduino UNO RX Pin 11


Ich hoffe ihr könnt mir weiterhelfen! Anbei nochmals der Quellcode des 
MC und die Antworten die mir das Modem auf die AT Befehle liefert:
______________________________________________________________________ 
_

Quellcode

#include <SoftwareSerial.h>
#define SIM800_TX_PIN 10
#define SIM800_RX_PIN 11

SoftwareSerial serialSIM800(SIM800_TX_PIN,SIM800_RX_PIN);

void setup() {
  Serial.begin(9600);
  while(!Serial);
  serialSIM800.begin(9600);
  delay(1000);
  Serial.println("Setup Complete!");
}
void loop() {
  if(serialSIM800.available()){
    Serial.write(serialSIM800.read());
  }
  if(Serial.available()){
    serialSIM800.write(Serial.read());
  }
}
______________________________________________________________________

Antworten auf die AT Befehle:

Setup Complete!
at
OK
at+cpin="1234"
OK

+CPIN: READY

Call Ready

SMS Ready
at+csq
+CSQ: 23,0

OK
at+creg?
+CREG: 0,0

OK
at+creg=?
+CREG: (0-2)

OK
at+cops?
+COPS: 0

OK
at+cops=?
+COPS: (1,"D1","TMO D","26201"),(2,"vodafone","voda 
D2","26202"),(1,"E-Plus","E-Plus","26203"),,(0-4),(0-2)

OK

at+gsv
SIMCOM_Ltd
SIMCOM_SIM800L
Revision:1418B04SIM800L24

OK

von Christian S. (christian_s593)


Lesenswert?

Es kann mal 1-2 Minuten dauern, bis er mit Login fertig ist.
Call Ready heißt nicht, dass man schon Netzlogin hat, sondern viel mehr, 
dass das Sim Modul telefonieren kann. Kann auch daran liegen, dass die 
Stromversorgung nicht gut genug ist. Dabei ergeben sich auch komische 
Fehler.

von Chris T. (christian_s987)


Lesenswert?

Ich habe auch schon >5 Minuten gewartet, leider ohne Erfolg.

von Christian S. (christian_s593)


Lesenswert?

Was spuckt es denn bei AT+CFUN? aus?
Eventuell mit AT+CFUN=1 richtig einschalten.

Eventuell mal wirklich deine Versorgung checken.
Impulsmäßig zieht es etwa 2A Strom.

von Christian (Gast)


Lesenswert?

AT+CFUN ist 1.

Nach jeder Pin Eingabe versucht es ca 10 sek. lang sich einwählen bzw 
ein Netz zu suchen. die Antwort ist dann immer +CREG: 0,2. nach den 10 
sek. kommt wieder permanent +CREG: 0,0

ich werde das mit der Stromversorgung mal anpassen, vielleicht hilft das 
ja.

von Chris T. (christian_s987)


Lesenswert?

An der Versorgung liegt es nicht. Ich habe das Modul mit folgendem 
Netzteil betrieben und das Problem bleibt das gleiche.

https://www.amazon.de/LEICKE-Netzteil-Ladeger%C3%A4t-Externe-Laufwerke/dp/B01I1JEWPU/ref=sr_1_1?ie=UTF8&qid=1499198093&sr=8-1&keywords=netzteil+5v+3a

Allerdings bin ich jetzt einen Schritt weiter. Wenn ich den SIM-PIN 
entferne, versucht er sich permanent in ein Netz einzuwählen (+creg 0,2) 
bis er das Ganze mit +creg 0,4 beendet. Dabei ist die Signalstärke immer 
null (+csq 0,0).
Wenn allerdings der SIM-PIN aktiv ist, versucht er nach erfolgreicher 
PIN Eingabe ca. 5 Sek. sich einzuwählen ehe er dann mit +creg 0,0 
antwortet. Auch hier ist während der Netzsuche CSQ 0,0. Sobald er wieder 
+creg 0,0 ausgibt ist die Signalstärke bei ca. 25,0.

Hat jemand aufgrund der neuen Erkenntnis, eine Idee was mein Problem ist 
?

von Harry L. (mysth)


Lesenswert?

Ich glaube mich zu erinnern, daß da mal Module mit der falscher Firmware 
in Umlauf waren, die in den europäischen Netzen nicht funktioniert.

Ich würde mal beim Hersteller der Module nach Firmware-Updates suchen.

von Chris T. (christian_s987)


Lesenswert?

Es lag wohl an den Modulen. Laut Hersteller sind die Modems mit der 
Bezeichnung "L" nicht für EU vorgesehen. Daraufhin habe ich mir ein SIM 
800C bestellt was sofort funktionierte.

von Heiko S. (dg2ffp)


Lesenswert?

Hallo,

ich habe mir auch ein sim800l Modul zugelegt und habe Schwierigkeiten 
beim Inbetriebnehmen. Es bucht sich zwar in das Netz ein (manchmal sehr 
schwerfällig). Wenn man es anruft dann bucht es sich sofort aus und der 
Anruf kann nicht entgegengenommen werden. Es kommt ein Besetzt-Zeichen! 
Aber ich habe es schonmal geschafft, dass der Anruf angenommen wurde. Da 
ich nicht weit von einem Umsetzer bin, kann ich Empfangsprobleme 
ausschließen.
Ein sicherer Betrieb sieht eigentlich anders aus.

Hat vielleicht noch jemand Erfahrung mit diesen Modulen gemacht und kann 
Infos geben?

Könnte es mit einem sim800c Modul vielleicht funktionieren?

Gruß Heiko

von Stefan F. (Gast)


Lesenswert?

Der letzte Beitrag von Chris Tian ist doch eindeutig, oder nicht? Damit 
ist deine Frage beantwortet.

von Heiko S. (dg2ffp)


Lesenswert?

Frage ist nicht beantwortet, sonst dürfte sich das L Modul überhaupt 
nicht in das GSM-Netzwerk einbuchen. Aber das Problem wurde auch so 
behoben. Es funktioniert. Alles ist gut.

: Bearbeitet durch User
von Uwe (Gast)


Lesenswert?

Hast du den Fehler im L Modul gefunden, oder hast du einfach eines mit C 
verwendet ?

von Alex W. (a20q90)


Lesenswert?

Heiko S. schrieb:
> Es funktioniert. Alles ist gut.

Würdest du bitte mitteilen was du gemacht hast um das L-Modul zum laufen 
zu bringen?

von Heiko S. (dg2ffp)


Lesenswert?

Hallo,

natürlich gebe ich gerne Hilfe!

Der ausschlaggebende Punkt war die Stromversorgung. Mein Modul hat erst 
zuverlässig ab 4,3 Volt gearbeitet, habe die Stromversorgung auf 4,5 
Volt eingestellt. Das Modul sollte eigentlich von 3,7 - 4,2 Volt laut 
Datasheet laufen.
Ab diesem Moment (4,5V) brauchte das Modul nur noch ca. 10 sec zum 
Einbuchen. Auch ein Anrufen mit automatischer Rufannahme klappte auf 
anhieb.
Vermutlich gab es ein Spannungsabfall bei 3,8V und der Bownout-Detector 
machte ein Reset und buchte sich genau während des Anrufes wieder aus.

Zum Testen die Stromversorgung mit einem größeren Elko buffern, damit es 
nicht zum Spannungsabfall kommt.

Vielleicht hilft das jemanden weiter.

@Uwe  Mir steht im Moment nur das L Modul zu Verfügung.

Gruß Heiko

: Bearbeitet durch User
von Stefan S. (novafly)


Lesenswert?

Hallo zusammen,

da ich jetzt nach drei Abenden meine Sim800L-Module zum Laufen bekommen 
habe, möchte ich kurz ein paar Infos weitergeben:

Ausgangssituation:
3x Sim800L-Modul (2x ohne Level-Shifter, einmal 5V kompatibel) liefen 
weder an einem Arduino Micro Pro noch an einem UNO (SIM ist von 
AldiTalk). Es war egal welchen Code ich getestet habe - alle hatten das 
gleiche Problem:

Keine Registierung im GSM-Netz!
Über die bekannten AT-Befehle wurden zwar verfügbare Provider angezeigt, 
der Befehl "AT+CFG?" lieferte aber nur "0,4" oder "0,2" zurück, demnach 
konnte sich das Modul mit der SIM nicht im Netz registrieren.

Aufbau:
2x Modul mit Level-Shifter (5V <-> 2,8V) zum MC und einer 
Spannungsversorgung aus einer LiIon-Zelle direkt (ca. 4V) bzw. beim 
dritten Board direkt am MC. Die Arduinos waren per USB immer mit dem 
Rechner verbunden und wurden über USB versorgt.

Ich hatte mich dann irgendwann bei der TX/RX-Leitung versteckt (falsche 
Pins am MC) und plötzlich hat sich das SIM-Modul nach dem Einschalten im 
GSM-Netz angemeldet (LED blinkt dann mit ca. 3 Hz). In diesem Fall waren 
also die Datenleitungen zum SIM800L hin offen und nicht mit dem MC 
verbunden. Das ganze konnte reproduziert werden. Alle GSM-Module liefen 
ohne verbundene Datenleitungen innerhalb von 15sec hoch.

Falls also jemand das geschilderte Problem hat, einfach mal nur das 
SIM-Modul an VCC & GND hängen und auf die LED schauen. Diese blinkt 
anfangs mit ca. 1Hz und wechselt nach erfolgreicher Einwahl auf einen 
Frequenz von ca. 3 Hz. Wichtig ist, dass die PIN-Sperre in der SIM 
deaktiviert ist, sonst scheitert natürlich die Anmeldung beim Provider - 
sollte aber bekannt sein.

Werde die Tage eruieren wo das herkommen kann. Entweder darf die 
serielle Schnittstelle im MC nicht zu früh initialisiert werden oder die 
aktive USB-Verbindung zum Rechner/Arduino IDE macht hier Probleme. Im 
ersten Fall würde ein einfaches "delay" von 15sec vor der Initialiserung 
helfen. Das stört wohl in den wenigsten Fällen, da das ja nur einmal 
nach dem Einschalten erfolgen muss (in der Setup-Routine).

Und noch was:
Die SimCom-Module vertragen max. 4,4V an VCC und 2,8V(3,3V) an den 
Datenleitungen im Dauerbetrieb. Alles was hier außerhalb liegt mag wohl 
ein paar Tage gehen, killt aber das Modul irgendwann bzw. führt zu 
Fehlfunktionen. Auch die Pegel an den Datenleitungen werden überwacht. 
Sind die zu hoch, meldet das Modul ständig die Überspannung, 
initialisiert einfach von selbst neu oder nimmt AT-Befehle nicht mehr 
richtig an. Daher bitte aufpassen!

Alternativ gibt es aber auch 5V kompatible Platinen mit dem SIM800L, die 
haben die Anpassung der Datenleitungen und des VCC schon integriert.

Wer einen Level-Shifter selbst schnell bauen will kann sowas hier machen 
(siehe Seite 10): https://cdn-shop.adafruit.com/datasheets/an97055.pdf
Darauf achten, dass die N-Channel FETs eine Ugs von ca. 2V haben.....

So, jetzt ists spät - ich hau mich aufs Ohr ;)
vg, Stefan

: Bearbeitet durch User
Beitrag #5438344 wurde von einem Moderator gelöscht.
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.