Olá estou tentando utilizar o módulo GSM SIM800l com o Arduino UNO contudo não estou conseguindo enviar ou receber SMS nem efetuar ou receber ligações (no caso de receber ligações cai na caixa postal).

Alguns dados:

-CHIP OK, desbloqueado e apto a receber, efetuar ligações e enviar e receber SMS.

-Fonte de Alimentação: 12V 5A, em conjunto com um regulador LM2596 com saída ajustava em 4.04V

-Arduino UNO

-Antena de notebook.

Observações:

Ao ligar o módulo com o chip e antena conectados o LED do mesmo apresenta o seguinte comportamento: 

-Pisca 7 vezes com intervalo de 1s, e apaga por cerca de 3 ~ 4s, volta a piscar 7 vezes com intervalo de 1s...

A programação utilizada:

-Já tentei alguns firmwares mais elaborados com bibliotecas para GSM e tudo mais, mas como não funcionava, utilizei para os testes mais básicos uma programação restrita a receber comandos AT.

//Programa: Comandos AT com o SIM800L
//Autor: Arduino e Cia

#include <SoftwareSerial.h>

//TX do SIM800L conectado ao pino 10
#define SIM800_TX_PIN 10

//RX do SIM800L conectado ao pino 11
#define SIM800_RX_PIN 11

SoftwareSerial serialSIM800(SIM800_TX_PIN, SIM800_RX_PIN);

void setup()
{
//Comunicacao serial para uso com o Serial Monitor
Serial.begin(2400);
while (!Serial);

//Comunicacao com o modulo SIM800L
serialSIM800.begin(2400);
delay(1000);

Serial.println("Envie o comando AT para o SIM800L...");
}

void loop()
{
//Mostra no Serial Monitor os dados enviados pelo modulo
if (serialSIM800.available())
{
Serial.write(serialSIM800.read());
}

//Envia os comandos AT para o modulo
if (Serial.available())
{
serialSIM800.write(Serial.read());
}
}

-O comando básico "AT" que retorna um "OK" funciona normalmente.

-Mas os comandos de envio de SMS e para efetuar ligações não funcionam.

-No caso do comando: "ATDP+NUMERO" (efetuar ligação) retorna o erro "NO CARRIER"

-O comando para verificar a velocidade em uso "AT+IPR?" que mostra a velocidade em uso retorna 

"+IPR: 0".

Alguém poderia ajudar ? 

Exibições: 1064

Responder esta

Respostas a este tópico

Se ele está assim, Ainda está com falta de corrente, se puder, coloque um capacitor de 100uF ou 1000uF 16V entre o VCC e GND do módulo,

Opa man, então coloquei o capacitor não houve alterações, mas com o intuito de verificar as questões de corrente e tal fiz os seguintes testes:

-Medi a corrente que vai para o Módulo, enquanto ele pisca com intervalo de 1s ela está em torno de 500mA, quando ele apaga ela zera e instantes antes de voltar a piscar ela bate 700mA, e em seguida se estabiliza em 500mA, enquanto pisca.

-Fiz testes relacionados a fonte para conferir se a mesma consegue entregar 5A, por falta de recursos consegui consumir da fonte 3.6A, creio que a fonte consegue sim fornecer os 5A.

 Obrigado pela atenção, mais alguma sugestão ? 

Rodando esse sketch, ele mostra repetidamente, ou ele da os dois Ok de inicialização?

Ele incia com a frase "Envie o comando AT para o SIM800L...", após mandar o comando "AT" ele retorna "OK", após um tempo ele retorna "Call Ready" e "SMS Ready". Percebi que quando o led está desligado no intervalo já mencionado ele não aceita os comandos AT...

Já testei outros sketch que iniciam fazendo um setup, e tudo mais, e outro que aparece dois OK's seguidos, mas em todos os sketchs  testados não há envio nem recebimento de sms ou ligação... 

Se ele está assim, é certeza que a corrente para ele está baixa, quando ele dá o pico dos 2A algo derruba a tensão e ele reinicia.
Eu tenho vários projetos (não são projetos de hobbista, são projetos que estão em funcionamento),que alimento um circuito inteiro, com uma fonte de 5V de 250mA, e uso o capacitor de 1000uF para "segurar a tensão" durante o starte, uso apenas um diodo para reduzir dos 5V para os 4.4V e funciona bem aqui.

Opa, vou tentar aqui colocar o capacitor de 1000uF , em paralelo com o Módulo.

Assim que possível trago os resultados, obrigado pela atenção.

AT é comando de RESET do módulo

Com esse programa de echo para o terminal, há repetição do 
"Call Ready" e "SMS Ready"?

Se sim, ele não reiniciando, ele apenas vai receber comandos quando tiver conseguido estabelecer comunicação com a rede e ficar piscando apenas em intervalos regulares.

Sim há repetição do "Call Ready" e "SMS Ready".

Então no caso ele não recebe os sms ou envia, e ligações, por causa da indisponibilidade de se comunicar com a rede ? 

Isso, quando ele está tentando comunicar com a ERB para estabelecer a comunicação é o quando ele puxa mais corrente, pois nesse momento a autenticação é feita com a máxima potência e no modo analógico, depois de estabelecida a conexão ele vai tentar sair do sistema TDMA para 3G-4G que consome menos energia para a comunicação.

Quanto a sua medição de corrente, você estabilizou ela em 4.4V , o que você precisa testar é no momento que ele chega a 700mA se a tensão não cai para menos que os 3.6V que ele precisa para se manter. Eu perdi quase um mês para chegar numa solução para o problema, nunca consegui fazer ele funcionar alimentando diretamente do Arduino, mas com o arduino na USB e uma fonte de 250mA eu faço ele funcionar, por isso do capacitor de 1000uF
Inclusive uso um 7805 de 1A max, para reduzir de 250mA a fonte 12 para 5V.

então man atualizando os testes, coloquei em paralelo com o módulo um capacitor de 1000uF, mas a situação é a mesma. Estou monitorando a tensão e ela cai ara 4,08V no pico de 700mA. Além disso no monitor serial tem vezes que ele retorna essas mensagens após o comando "at":

ok, o AT é reset do modulo

vc da um AT

e ele volta a dar o call ready e o SMS ready novamente?

a velocidade do serial monitor está em 2400, e numa hora aparece uns caracteres estranhos, tente setar para 9600

Esse ATDP é para "discar" no modo dados. De modem para modem.

Tente "discar" no modo voz.

ATD0119...;

Digo, termine com o ";". 

AT+CSQ

http://m2msupport.net/m2msupport/atcsq-signal-quality/

 

RSS

Destaques

Registre-se no
Lab de Garagem
Clicando aqui

Convide um
amigo para fazer
parte

curso gratis de arduino

© 2018   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço