Sim800l
El Modulo SIM800L nos permite comunicarnos a traves de la red GSM Enviar datos via SMS o via GPRS. perfecto para aplicaciones IOT Junto con una tarjeta ThingsMobile es una muy buena opcion para enviar datos IOT a muy bajo coste.
https://www.elecrow.com/wiki/images/2/20/SIM800_Series_AT_Command_Manual_V1.09.pdf
Indice:
1)
2)
3)
4)
5)
6)
7)
8)
9)
10)
Notas
Referencias
Como en una conexion de datos a la red de telefonia movil pueden fallar muchas cosas. Asi que iremos paso a paso. (si hago muchos cambios sin pruebas y algo falla me costara bastante encontrar el problema)
Conexion de la tarjeta a un adaptador serie.
- Averiguar el puerto USB
jejo@medion:~$ dmesg | tail [795188.266766] usb 1-2: new full-speed USB device number 99 using xhci_hcd [795188.416289] usb 1-2: New USB device found, idVendor=1a86, idProduct=7523 [795188.416297] usb 1-2: New USB device strings: Mfr=0, Product=2, SerialNumber=0 [795188.416301] usb 1-2: Product: USB2.0-Serial [795188.420594] ch341 1-2:1.0: ch341-uart converter detected [795188.421199] usb 1-2: ch341-uart converter now attached to ttyUSB1____
* En mi caso el serie es ttyUSB1 luego puedo hacer `screen /dev/ttyUSB1 9600` ___________
### Prueba comandos AT _____
* **1er** comando 'at' (tecleando **at** + **intro**) el aparato deberia devolver **OK**
at OK
- 2o comando
ati
Informacion. (tecleando ati + intro) el aparato deberia devolver Con la informacion del modelo.
ati SIM800 R14.18 OK
- 3er comando
at+cbc
estado bateria (tecleando at+cbc + intro) el aparato nos dara la tension de alimentacion. Ojo que no deberia ser superior a 4v (lo habitual es 3,3v).
at+cbc +CBC: 0,0,3313 OK____
* **4o** comando `at+csq` cobertura (**s**ignal **q**uality)
at+csq +CSQ: 10,0 OK
- 5o comando
at+cops=?
operadores. (tarda un poco)
at+cops=? +COPS: (2,"vodafone","voda ES","21401"),(1,"MOVISTAR","MSTAR","21407"),,(0-4),(0-2) OK
Prueba comandos AT (tarjeta SIM)
Hasta aqui es mejor probar sin insertar la SIM.
Apagamos Insertamos la SIM y encendemos.
Nota: Es posible que tengamos que probar un par de veces. Tambien he notado le cuesta mas responder a los comandos. Sobre todo cuando esta cogiendo cobertura.
A veces funciona mejor a 115000bps y tambien funciona pegando el comando en lugar de escribirlo. (cuando lo escribes pasa mucho tiempo entre caracteres. y con los caracteres sueltos “se mosquea” unos segundos
- 1er comando ‘at’ el aparato deberia devolver OK
Aqui es donde se nota que con la sim insetada el aparato va mas lento.
(no siempre responde al at a la primera) Aunque no parece importante afecta mucho a la forma de programar. Poisiblemente sea a que mientras el chip esta atendiento a eventos de radio no puede atender peticiones.
at OK +CPIN: READY Call Ready SMS Ready
Cuando la SIM esta insertada suelen aparecer de vez en cuando estas lineas +CPIN: READY , Call Ready y SMS Ready
- 2o comando ‘at+ccid’ Informacion de la SIM Si no detecta o no puede leer la sim devolvera ERROR en caso contrario nos dara los datos de la SIM.
at+ccid 1234567812345678123a OK
- 3er comando ‘at+creg?’ Informacion de registro en la red
AT+CREG? +CREG: 0,2 OK
- 4o comando ‘at+csq’ Intensidad de señal. deberia ser mayor que 5
at+csq +CSQ: 0,0
- 5o comando ‘at+cpin?’ comprueba si la tarjeta sim esta lista para operar en la red.
at+cpin? +CPIN: READY OK
https://exploreembedded.com/wiki/Setting_up_GPRS_with_SIM800L
AT+CFUN=1 OK
AT+CPIN? +CPIN: READY OK
AT+CSTT? +CSTT: "CMNET","","" OK
at+cstt="TM","","" OK
AT+CGATT? +CGATT: 0 OK
https://github.com/Seeed-Studio/Seeeduino_GPRS/tree/master/example
Recuerda: control+a y luego \ para salir
em50l@jejo.es$ jejo@em50l:~$ root@em50l:/#
(copiar y pegar codigo)
test
codigo Formateado internamente
include jejo.h;
printf("hola");
codigo Formateado highlight.pack.js
include jejo.h;
printf("hola");
include jejo.h;
printf("hola");
Enlace a pagina interna.
Notas
Referencias
- Info: https://lastminuteengineers.com/sim800l-gsm-module-arduino-tutorial/ https://exploreembedded.com/wiki/Setting_up_GPRS_with_SIM800L
https://github.com/Seeed-Studio/Seeeduino_GPRS https://github.com/carrascoacd/ArduinoSIM800L/blob/master/examples/WeatherStationExample.ino