отправка смс AT командами sim900

Alexey_sanich
Offline
Зарегистрирован: 04.01.2016

Здравствуйте! Помогите разобраться. Приобрел такой модуль QEXC14SkQJQ.jpg 

прошил.

Прошивка: 1137B02SIM900M64_ST_ENHANCE. 

В терминале на АТ команды отвечает, смс отправляет, принимает, звонит.

Заливаю этот скеч 

#include <SoftwareSerial.h>
 
SoftwareSerial mySerial(2, 3);
 
void setup()
{
  Serial.begin(9600);
  mySerial.begin(9600);
 
}
 
void loop()
{
  if (mySerial.available())
    Serial.write(mySerial.read());
  if (Serial.available())
    mySerial.write(Serial.read());
}
 
В мониторе так же на команды отвечает, звонит, а отправить смс не в какую символ для отправкм смс, воспринимает как текс смс

символы: $1A,  0х1A,  \0х1A, #026, SUB, char(26) ни как не реагирует, а в терминале этим символом $1A отправляет.

так же и со скетчем

#include <SoftwareSerial.h>

 
SoftwareSerial mySerial(2, 3);
 
void setup()
{
  Serial.begin(9600);
 
  mySerial.begin(9600);
   mySerial.println("AT+CMGF=1");  //режим кодировки СМС - обычный (для англ.)
  delay(100);
  mySerial.println("AT+CSCS=\"GSM\"");  //режим кодировки текста
  delay(100);
   mySerial.println("AT+CMGS=\"+79184****93\"");
  delay(500);
  mySerial.println("hello");
  delay(500);
  mySerial.print(char(26));
  delay(500);
  mySerial.println();
}
 
void loop()
{
 
}
молчит, подскажите, что не так?
Araris
Offline
Зарегистрирован: 09.11.2012

В подробности я не вдавался, навскидку, попробуйте mySerial.print((char)26); вместо mySerial.print(char(26));

Alexey_sanich
Offline
Зарегистрирован: 04.01.2016

Спасибо, попробую!

Jatixo
Offline
Зарегистрирован: 13.01.2016

В стандартном мониторе порта наверное не получится отправить ctrl+z, можно в Putty отправить и других подобных программах.

Alexey_sanich
Offline
Зарегистрирован: 04.01.2016

К сожалению безрезультатно.

Araris
Offline
Зарегистрирован: 09.11.2012
 
Ну, тогда включайте "дебаггер": после всех delay() добавьте что-то типа
 
while (mySerial.available()) Serial.write(mySerial.read());
 
и смотрите в мониторе последовательного порта ответы модема на команды.
loop45
Offline
Зарегистрирован: 18.09.2016

У меня тоже самый модуль. С компьютера все ок работает . А вот с ардуино не хочет ни отправлять ни принимать смс. В чем может быть проблема? Помогите плиз

_rusya_
Offline
Зарегистрирован: 25.11.2016
Здравствуйте! Тоже мучался с такой проблемкой, вот с таким кодом заработало:
Может кому то поможет...
 
mySerial.begin(19200);
   mySerial.print("AT+CMGF=1\r");  //режим кодировки СМС - обычный (для англ.)
  delay(300);
  mySerial.println("AT+CSCS=\"GSM\"");  //режим кодировки текста
  delay(300);
   mySerial.println("AT+CMGS=\"+38068******9\"");
  delay(300);
  mySerial.print("hello");
  delay(300);
  mySerial..print((char)26);
 
loop45
Offline
Зарегистрирован: 18.09.2016

Все проблема решена. Банальная замена сим карты другого оператора и заработала:) 

nadno
Offline
Зарегистрирован: 25.11.2016

а какой оператор если не секрет?

 

loop45
Offline
Зарегистрирован: 18.09.2016

Нет секрета. Называется Megacom. Дочерная компания от Megafon. Только находится в Бишкеке 

loop45
Offline
Зарегистрирован: 18.09.2016

Мегафон это россия. А наш Мегаком тоже самое. Но только находится в киргизии 

fly245
fly245 аватар
Offline
Зарегистрирован: 25.08.2013

Подскажите -как баланс проверить на SIM900A ?