neoway m590
- Войдите на сайт для отправки комментариев
Ктонибудь может объяснить почему та или ина симка работает/не работает?
есть 2 симки мтс. первый номер у меня 11 лет (но симку буквально неделю назад поменял(микро(без нано)), второй номер где то год (симку поменял(на микро(без нано)) вчера, т.к. была нано и думал что изза этого не работает)
проверял на одном и том же скетче (внизу).
увидел закономерность. когда в монитор порта прилетает +RB..... (не помню что именно прилетает, но это говорит о загрузке контактов или что то в этом роде(где то прочел это)), модуль отправляет смс и принимает звонки.
если надписи нет, то не прилетает.
так вот. на моей "старой" симке работает, на "новой" нет. причем получал в одном и том же офисе с разницей в неделю.
почему? может есть какая то особенная опция/услуга? перерыл весь личный кабинет, ничего особенного не нашел...
#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3); // RX, TX
int ch = 0;
int led = 13;
String val = "";
void setup() {
delay(2000); //время на инициализацию модуля
pinMode(led, OUTPUT);
digitalWrite(led, LOW);
Serial.begin(9600); //скорость порта
Serial.println("GSM tester v1.0");
mySerial.begin(9600);
mySerial.println("AT+CLIP=1"); //включаем АОН
delay(100);
mySerial.println("AT+CMGF=1"); //режим кодировки СМС - обычный (для англ.)
delay(100);
mySerial.println("AT+CSCS=\"GSM\""); //режим кодировки текста
delay(100);
}
void loop() {
if (mySerial.available()) { //если GSM модуль что-то послал нам, то
while (mySerial.available()) { //сохраняем входную строку в переменную val
ch = mySerial.read();
val += char(ch);
delay(10);
}
if (val.indexOf("RING") > -1) { //если звонок обнаружен, то проверяем номер
if (val.indexOf("71234567890") > -1) { //если номер звонящего наш. Укажите свой номер без "+"
Serial.println("--- MASTER RING DETECTED ---");
mySerial.println("ATH0"); //разрываем связь
digitalWrite(led, HIGH); //включаем светодиод на 3 сек
delay(3000);
digitalWrite(led, LOW); //выключаем реле
}
} else
Serial.println(val); //печатаем в монитор порта пришедшую строку
val = "";
}
if (Serial.available()) { //если в мониторе порта ввели что-то
while (Serial.available()) { //сохраняем строку в переменную val
ch = Serial.read();
val += char(ch);
delay(10);
}
//mySerial.println(val); //передача всех команд, набранных в мониторе порта в GSM модуль
if (val.indexOf("sendsms") > -1) { //если увидели команду отправки СМС
sms(String("hello world"), String("+71234567890")); //отправляем СМС на номер +71234567890
}
val = ""; //очищаем
}
}
void sms(String text, String phone) //процедура отправки СМС
{
Serial.println("SMS send started");
mySerial.println("AT+CMGS=\"" + phone + "\"");
delay(500);
mySerial.print(text);
delay(500);
mySerial.print((char)26);
delay(500);
Serial.println("SMS send complete");
delay(2000);
}
может пинкод включен?
модуль сами паяли?
модуль паял сам, пинкод выключен
на первые эти команды отзывается "ОК" модуль при обеих симках
AT+CLIP=1AT+CMGF=1AT+CSCS=\"GSM\"правда покачто модуль питаю от зарядки от айпада (жду пока приедет преобразователь на 3а) и поэтому "старая"симка работает не 100% стабильно. но гдето 90% :). а вторая ни в какую
пс: с изменением скорости намучался, однако потом нашел как вы её меняли через скетч)
пс2: в очень многих примерах скорость общения с модуль стоит 9600. кто то пишет что на 19200 стабильнее. разницу не заметил. но может она есть?
а теперь заработала... магия...
с этим преобразователем будет работать стабильно? http://ru.aliexpress.com/item/Free-shipping-LM2596-Power-Module-DC-DC-Buck-Converter-Step-Down-Module-LM2596-High-Quality-Wholesale/32363769998.html
а то я уже на измене)
это всё считается нормальным для этого модуля при работе от 5в 2А?
(то что прилетает в монитор порта)
Для питания GSM-модуля необходимо 4,2-5 вольт с током не менее 2А. Иначе будут глюки, которые Вы и наблюдаете.