4В нужно подавать. не верьте китайцам, что 5В через диод.
Спасибо, попробую поставить стабилизатор напряжения на вход неовея.
А не подскажите почему у меня происходит перезагрузка ардуинки, когда она питается от БП, а я подключаю к ней ноутбук по USB. Ноут в тот момент работает от батареи? Это не особо мешает, просто интересно почему так происходит.
Помогите с моулем M590 На АТ команды отвичает но когда на него звониш в не зоны запитан 18650 подключён лчерез usb ttl конвертер. Диод выкинул поставил електроли по питанию. Но всети не появляетса на команду AT+CREG? отвичает +CREG: 2,3 пин с симки снят. Операторов видит. Потрибление 0,2А - 0,03А то что видел максимум.
Поделюсь своим опытом использования М590.
По-работе необходимо было сделать реле времени, управляемое с помощью GSM-модуля. Использовал NEOWAY M590. Блок питания 12 В 1 А. Питание на модуль - 5 В, понижал от БП с помощью LM7805. Мозги - Arduino Pro Mini. Плата на которой все это распаивал своя, не из набора модуля. Сделал 20 штук. Больше года работают в щитках автоматики на улице. Сбои бывают редко и только лишь в местах плохой связи, далеко от вышек, в низинах. Приходилось перезапускать в ручном режиме. Сделал автоматическую проверку через каждые полчаса с принудительной перезагрузкой в случае потери связи или зависания.
У меня вот какая проблема: модуль м590е включается, стартует, а на AT-команды отвечает не на все.
Конкретно не хочет работать с симками и сетями: при вводе команд, связаных с симкой выдает ошибку, на команду AT+CSQ выдает 99,99; на at+cpas (если не ошибаюсь), вместо вразумительных ответов (0, 2, ...) выдает 1 (то, чего в описании нет)... Пробовал с 4 симками - результат один - никакой. Для экперимента вставлял те же симки в модуль sim900 и они все работали. Кто подскажет как с этим бороться?
Питание модуля пробовал от БП планшета (5в 2А) и от 2х параллельных аккумуляторов 18650 на 3400мач каждый. Подвес параллельно танталу емкости 1000мкф*16в не помог.
на at+cpas (если не ошибаюсь), вместо вразумительных ответов (0, 2, ...) выдает 1 (то, чего в описании нет)...
такое Neoway m590 выдаёт, когда он не смог инициализироваться.
Такое можно получить и на моём исправном Neoway m590, например, когда сразу после включения хочу прочитать данные о сим-карте; чтобы такое не было, надо выжидать паузу в несколько секунд.
#include <SoftwareSerial.h> // Библиотека програмной реализации обмена по UART-протоколу
SoftwareSerial SIM800(2, 3); // RX, TX
String _response = ""; // Переменная для хранения ответа модуля
void setup() {
Serial.begin(9600); // Скорость обмена данными с компьютером
SIM800.begin(9600); // Скорость обмена данными с модемом
Serial.println("Start!");
sendATCommand("AT", true); // Отправили AT для настройки скорости обмена данными
// Команды настройки модема при каждом запуске
//_response = sendATCommand("AT+CLIP=1", true); // Включаем АОН
//_response = sendATCommand("AT+DDET=1", true); // Включаем DTMF
//_response = sendATCommand("AT+CMGF=1", true); // Включаем текстовый режим SMS (Text mode)
_response = sendATCommand("AT+CUSD=1,\"*102#\"", true); // Здесь необходимо указать свой USSD-запрос
}
String sendATCommand(String cmd, bool waiting) {
String _resp = ""; // Переменная для хранения результата
Serial.println(cmd); // Дублируем команду в монитор порта
SIM800.println(cmd); // Отправляем команду модулю
if (waiting) { // Если необходимо дождаться ответа...
_resp = waitResponse(); // ... ждем, когда будет передан ответ
// Если Echo Mode выключен (ATE0), то эти 3 строки можно закомментировать
if (_resp.startsWith(cmd)) { // Убираем из ответа дублирующуюся команду
_resp = _resp.substring(_resp.indexOf("\r", cmd.length()) + 2);
}
Serial.println(_resp); // Дублируем ответ в монитор порта
}
return _resp; // Возвращаем результат. Пусто, если проблема
}
String waitResponse() { // Функция ожидания ответа и возврата полученного результата
String _resp = ""; // Переменная для хранения результата
long _timeout = millis() + 10000; // Переменная для отслеживания таймаута (10 секунд)
while (!SIM800.available() && millis() < _timeout) {}; // Ждем ответа 10 секунд, если пришел ответ или наступил таймаут, то...
if (SIM800.available()) { // Если есть, что считывать...
_resp = SIM800.readString(); // ... считываем и запоминаем
}
else { // Если пришел таймаут, то...
Serial.println("Timeout..."); // ... оповещаем об этом и...
}
return _resp; // ... возвращаем результат. Пусто, если проблема
}
void loop() {
if (SIM800.available()) { // Если модем, что-то отправил...
_response = waitResponse(); // Получаем ответ от модема для анализа
_response.trim(); // Убираем лишние пробелы в начале и конце
Serial.println(_response); // Если нужно выводим в монитор порта
//....
if (_response.startsWith("+CUSD:")) { // Пришло уведомление о USSD-ответе
if (_response.indexOf("\"") > -1) { // Если ответ содержит кавычки, значит есть сообщение (предохранитель от "пустых" USSD-ответов)
String msgBalance = _response.substring(_response.indexOf("\"") + 2); // Получаем непосредственно текст
msgBalance = msgBalance.substring(0, msgBalance.indexOf("\""));
Serial.println("USSD: " + msgBalance); // Выводим полученный USSD-ответ
float balance = getFloatFromString(msgBalance); // Извлекаем информацию о балансе
Serial.println("\r\nBalance: " + (String)balance ); // Выводим информацию о балансе
sendSMS("+792211111111", (String)balance);
}
}
}
if (Serial.available()) { // Ожидаем команды по Serial...
SIM800.write(Serial.read()); // ...и отправляем полученную команду модему
};
}
void sendSMS(String phone, String message)
{
String _result = "";
sendATCommand("AT+CMGF=1", true); // Включаем текстовый режима SMS (Text mode)
sendATCommand("AT+CMGS=\"" + phone + "\"", true); // Переходим в режим ввода текстового сообщения
_result = sendATCommand(message + (String)((char)26), true); // После текста отправляем перенос строки и Ctrl+Z
}
float getFloatFromString(String str) { // Функция извлечения цифр из сообщения - для парсинга баланса из USSD-запроса
bool flag = false;
String result = "";
str.replace(",", "."); // Если в качестве разделителя десятичных используется запятая - меняем её на точку.
for (int i = 0; i < str.length(); i++) {
if (isDigit(str[i]) || (str[i] == (char)46 && flag)) { // Если начинается группа цифр (при этом, на точку без цифр не обращаем внимания),
if (result == "" && i > 0 && (String)str[i - 1] == "-") { // Нельзя забывать, что баланс может быть отрицательным
result += "-"; // Добавляем знак в начале
}
result += str[i]; // начинаем собирать их вместе
if (!flag) flag = true; // Выставляем флаг, который указывает на то, что сборка числа началась.
}
else { // Если цифры закончились и флаг говорит о том, что сборка уже была,
if (str[i] != (char)32) { // Если порядок числа отделен пробелом - игнорируем его, иначе...
if (flag) break; // ...считаем, что все.
}
}
}
return result.toFloat(); // Возвращаем полученное число.
}
#include <SoftwareSerial.h> // Библиотека програмной реализации обмена по UART-протоколу
SoftwareSerial SIM800(2, 3); // RX, TX
String _response = ""; // Переменная для хранения ответа модуля
void setup() {
Serial.begin(9600); // Скорость обмена данными с компьютером
SIM800.begin(9600); // Скорость обмена данными с модемом
Serial.println("Start!");
sendATCommand("AT", true); // Отправили AT для настройки скорости обмена данными
// Команды настройки модема при каждом запуске
//_response = sendATCommand("AT+CLIP=1", true); // Включаем АОН
//_response = sendATCommand("AT+DDET=1", true); // Включаем DTMF
//_response = sendATCommand("AT+CMGF=1", true); // Включаем текстовый режим SMS (Text mode)
_response = sendATCommand("AT+CUSD=1,\"*102#\"", true); // Здесь необходимо указать свой USSD-запрос
}
String sendATCommand(String cmd, bool waiting) {
String _resp = ""; // Переменная для хранения результата
Serial.println(cmd); // Дублируем команду в монитор порта
SIM800.println(cmd); // Отправляем команду модулю
if (waiting) { // Если необходимо дождаться ответа...
_resp = waitResponse(); // ... ждем, когда будет передан ответ
// Если Echo Mode выключен (ATE0), то эти 3 строки можно закомментировать
if (_resp.startsWith(cmd)) { // Убираем из ответа дублирующуюся команду
_resp = _resp.substring(_resp.indexOf("\r", cmd.length()) + 2);
}
Serial.println(_resp); // Дублируем ответ в монитор порта
}
return _resp; // Возвращаем результат. Пусто, если проблема
}
String waitResponse() { // Функция ожидания ответа и возврата полученного результата
String _resp = ""; // Переменная для хранения результата
long _timeout = millis() + 10000; // Переменная для отслеживания таймаута (10 секунд)
while (!SIM800.available() && millis() < _timeout) {}; // Ждем ответа 10 секунд, если пришел ответ или наступил таймаут, то...
if (SIM800.available()) { // Если есть, что считывать...
_resp = SIM800.readString(); // ... считываем и запоминаем
}
else { // Если пришел таймаут, то...
Serial.println("Timeout..."); // ... оповещаем об этом и...
}
return _resp; // ... возвращаем результат. Пусто, если проблема
}
void loop() {
if (SIM800.available()) { // Если модем, что-то отправил...
_response = waitResponse(); // Получаем ответ от модема для анализа
_response.trim(); // Убираем лишние пробелы в начале и конце
Serial.println(_response); // Если нужно выводим в монитор порта
//....
if (_response.startsWith("+CUSD:")) { // Пришло уведомление о USSD-ответе
if (_response.indexOf("\"") > -1) { // Если ответ содержит кавычки, значит есть сообщение (предохранитель от "пустых" USSD-ответов)
String msgBalance = _response.substring(_response.indexOf("\"") + 2); // Получаем непосредственно текст
msgBalance = msgBalance.substring(0, msgBalance.indexOf("\""));
Serial.println("USSD: " + msgBalance); // Выводим полученный USSD-ответ
float balance = getFloatFromString(msgBalance); // Извлекаем информацию о балансе
Serial.println("\r\nBalance: " + (String)balance ); // Выводим информацию о балансе
sendSMS("+79221111111", (String)balance);
String _response = "";
}
}
}
if (Serial.available()) { // Ожидаем команды по Serial...
SIM800.write(Serial.read()); // ...и отправляем полученную команду модему
};
}
void sendSMS(String phone, String message)
{
String _result = "";
sendATCommand("AT+CMGF=1", true); // Включаем текстовый режима SMS (Text mode)
sendATCommand("AT+CMGS=\"" + phone + "\"", true); // Переходим в режим ввода текстового сообщения
_result = sendATCommand(message + (String)((char)26), true); // После текста отправляем перенос строки и Ctrl+Z
}
float getFloatFromString(String str) { // Функция извлечения цифр из сообщения - для парсинга баланса из USSD-запроса
bool flag = false;
String result = "";
str.replace(",", "."); // Если в качестве разделителя десятичных используется запятая - меняем её на точку.
for (int i = 0; i < str.length(); i++) {
if (isDigit(str[i]) || (str[i] == (char)46 && flag)) { // Если начинается группа цифр (при этом, на точку без цифр не обращаем внимания),
if (result == "" && i > 0 && (String)str[i - 1] == "-") { // Нельзя забывать, что баланс может быть отрицательным
result += "-"; // Добавляем знак в начале
}
result += str[i]; // начинаем собирать их вместе
if (!flag) flag = true; // Выставляем флаг, который указывает на то, что сборка числа началась.
}
else { // Если цифры закончились и флаг говорит о том, что сборка уже была,
if (str[i] != (char)32) { // Если порядок числа отделен пробелом - игнорируем его, иначе...
if (flag) break; // ...считаем, что все.
}
}
}
return result.toFloat(); // Возвращаем полученное число.
}
не важно в какой строке указано String _response = "";
код не отрабатывает отправку
беда :(
значит нужно глубже разбираться (я тут туповат),
но мне кажеться или вы читать не умеете или специально троллите,
писали же что строка должна без слова String, а вы как упрямец воткнули целиком.
во вторых если я правильно понял код у вас запрос баланса сразу после включения, соотвественно при каждом нажатии "Загрузить" в Arduino IDE МК сбрасывается и шлет СМС, если ошибкак компиляции, сброс все равно происходит. Я например вчера таким образом заказчику вместо одной СМС послал 3 штуки по роуминговым тарифам из ЦФО в Калининград.
Добрый день! Столкнулся с проблемой: M590E (rev.1.30e) видит SIM, но не регистрируется в сети и не потребляет больше 0,14 А. Перечитал всю тему, гуглил, бесполезно.
Ответы из гипертерминала:
Регистрация в сети (+CREG: 0,4 т.е статус неизвестен, иногда бывает 0,3 но никогда 0,2 или 0,1)
Сигнал (+CSQ: 20,1 периодически меняется)
Список сетей (+COPS: (1,"MegaFon RUS","MegaFon ","25002"),(1,"MOTIV","MOTIV","25020"),(1,"Beeline","Beeline","25099"),(1,"MTS-RUS","MTS","25001") как по мне это главный признак что плата не труп).
Информация об операторе (+COPS: 2 других вариантов не было).
Проверка CCID SIM-карты (показывает 18 цифр).
Попытка позвонить на другой тел. (ответ NO CARRIER).
Что проверял:
Менял БП на разные, всегда использовал мощные на 5В 2-3А, подпаивался к контактам на плате толстыми проводами. Плата никогда не потребляла больше 0,14 А (даже при поиске сети по команде AT+COPS=? хотя список сетей в итоге показывает). Перезагрузки из-за нехватки питания не наблюдал.
Менял симки (3 разных оператора), все заведомо рабочие, ничего не меняется.
Добавлял конденсатор 1000 мкФ по питанию, без разницы. На 2 пин VBAT приходит как должно 4,5 В.
Припаивал провод как антенну, пропаивал все контакты, прозванивал контакты до SIM, проблем нет. Питание SIM 1,8 В.
Фото платы:
(крепление на слоте SIM было отломано, но прижим проверял, нормально).
UPD. Приобрел SIM800L, заработал с первого раза. +CREG выдает 0,1. +COPS: 0,0,"MegaFon", звонки проходят. Либо M590E попался бракованным, либо я его повредил при пайке.
Добрый день! Столкнулся с проблемой: M590E (rev.1.30e) видит SIM, но не регистрируется в сети и не потребляет больше 0,14 А. Перечитал всю тему, гуглил, бесполезно.
да вы не гуглили... здесь я неединижды писал - китайцы шлют битые 590.. короткое замыкание по питанию. точка..
Добрый день! Столкнулся с проблемой: M590E (rev.1.30e) видит SIM, но не регистрируется в сети и не потребляет больше 0,14 А. Перечитал всю тему, гуглил, бесполезно.
да вы не гуглили... здесь я неединижды писал - китайцы шлют битые 590.. короткое замыкание по питанию. точка..
либо на плате непропай или сопля. Я бы начал с проверки всех соединений...
Как я уже писал:
NST пишет:
Припаивал провод как антенну, пропаивал все контакты, прозванивал контакты до SIM, проблем нет. Питание SIM 1,8 В.
Проверил и перепаял еще разок, не помогло.
Short Circuit пишет:
да вы не гуглили... здесь я неединижды писал - китайцы шлют битые 590.. короткое замыкание по питанию. точка..
Гуглил и прекрасно понимал, что риск получить бракованный модуль высокий, раз китайцы выпаивают их с БУ устройств. Попадалась даже фотка со снятой защитой модуля, так там половина деталий не на своих местах из-за перегрева.
Но КЗ по питанию означет полный "труп", не так ли? А в моем случае он выводит список сетей и данные симки.
Short Circuit, приветствую. а есть идеи почему так.
собрал модуль стандартный, все без особых плясок подключилось. подпаял кондер на вход, поставил 12в блок 2а, через лмку выставил 4.4в (на 4.3 и ниже упорно в сети регистрироваться не хотел), через резисторы и диод развел рх тх, залил скетч, гонял пару дней на макетках (словил пару зависаний по смс, при чем модуль по звонку был доступен), через неделю, после очередного ребута по питанию, модуль сеть ловить перестал, диод горит просто красным (до этого мигал). Начал копать, почему так. думал уже спалил может, упорно выдавал +CSQ: 99.99, +CPAS: 1 по всем симптомам, как у парня с 5ой страницы этой темы и не хотел не в какую региться.
Ну вот сегодня в итоге, докрутил лмку, что начал работать на 5.2в. Из обвеске кондер на входе по питанию 10в 1500 uf. На выводе vbat мерю - 3.9в (с 3.8-3.7, не региться собственно). Китайская магия?:)
да, на 4.4в плата вобще холодная, не грелась асболютно. выше 4.7 на лмке когда выворачиваешь - теплая. 38 градусов пирометр в пике показывает.
Те, кто пишет, что ему надо 2А на вход, тоже не все даташит конечно читали. Это только когда кондер на 10. Установка 1000 мкф, снижает пиковое потребление до 0.6, по даташиту. Опытно проверено. Подтверждено.
Второе. Атенна в комплекте, проводок платой,неизвестно как рассчитана. В 80% случаях у меня модем с антенной теряется. Без нее-только при сильных провалах питания. И то, из-за макетных проводов, которые тонкие.
4В нужно подавать. не верьте китайцам, что 5В через диод.
Спасибо, попробую поставить стабилизатор напряжения на вход неовея.
А не подскажите почему у меня происходит перезагрузка ардуинки, когда она питается от БП, а я подключаю к ней ноутбук по USB. Ноут в тот момент работает от батареи? Это не особо мешает, просто интересно почему так происходит.
[
А не подскажите почему у меня происходит перезагрузка ардуинки, когда она питается от БП, а я подключаю к ней ноутбук по USB.
Сериал монитор открываете на ноуте?
[
А не подскажите почему у меня происходит перезагрузка ардуинки, когда она питается от БП, а я подключаю к ней ноутбук по USB.
Сериал монитор открываете на ноуте?
Да, именно для этого и подключаюсь
[
А не подскажите почему у меня происходит перезагрузка ардуинки, когда она питается от БП, а я подключаю к ней ноутбук по USB.
Сериал монитор открываете на ноуте?
Да, именно для этого и подключаюсь
При запуске Сериал-монитора происходит ресет ардуины. Всегда. Не только на вашем ноуте, а на других компах тоже. Это штатное поведение.
Помогите с моулем M590 На АТ команды отвичает но когда на него звониш в не зоны запитан 18650 подключён лчерез usb ttl конвертер. Диод выкинул поставил електроли по питанию. Но всети не появляетса на команду AT+CREG? отвичает +CREG: 2,3 пин с симки снят. Операторов видит. Потрибление 0,2А - 0,03А то что видел максимум.
Разобралса заменил SIM - ку и всё заработало
Поделюсь своим опытом использования М590.
По-работе необходимо было сделать реле времени, управляемое с помощью GSM-модуля. Использовал NEOWAY M590. Блок питания 12 В 1 А. Питание на модуль - 5 В, понижал от БП с помощью LM7805. Мозги - Arduino Pro Mini. Плата на которой все это распаивал своя, не из набора модуля. Сделал 20 штук. Больше года работают в щитках автоматики на улице. Сбои бывают редко и только лишь в местах плохой связи, далеко от вышек, в низинах. Приходилось перезапускать в ручном режиме. Сделал автоматическую проверку через каждые полчаса с принудительной перезагрузкой в случае потери связи или зависания.
У меня вот какая проблема: модуль м590е включается, стартует, а на AT-команды отвечает не на все.
Конкретно не хочет работать с симками и сетями: при вводе команд, связаных с симкой выдает ошибку, на команду AT+CSQ выдает 99,99; на at+cpas (если не ошибаюсь), вместо вразумительных ответов (0, 2, ...) выдает 1 (то, чего в описании нет)... Пробовал с 4 симками - результат один - никакой. Для экперимента вставлял те же симки в модуль sim900 и они все работали. Кто подскажет как с этим бороться?
Питание модуля пробовал от БП планшета (5в 2А) и от 2х параллельных аккумуляторов 18650 на 3400мач каждый. Подвес параллельно танталу емкости 1000мкф*16в не помог.
на at+cpas (если не ошибаюсь), вместо вразумительных ответов (0, 2, ...) выдает 1 (то, чего в описании нет)...
такое Neoway m590 выдаёт, когда он не смог инициализироваться.
Такое можно получить и на моём исправном Neoway m590, например, когда сразу после включения хочу прочитать данные о сим-карте; чтобы такое не было, надо выжидать паузу в несколько секунд.
Все дело в том, что это мы видим и через час работы...
А как насчет всего остального???
Явно нет связи симкарты с модулем. Попробуйте зачистить контакты лотка симкарты и на самой симкарте.
А почему сети не видит?! Их-то он должен видеть и без симки!
Я же уже писал, что на все запросы, связанные с сетями и симкой он отвечает "ERROR"
Прошу помощи
скейтч
Должен отработать так - на посылку смс с указанного номера на модем со словом money должен в ответ прислать каков баланс на симке модема
что бы не пробовал
идет вот такое или похожее
Neo send> AT+CUSD=1,"#102#"
Neo send>
+CUSD: 0,"??????: ????? 1?. ??????? ?? ??: ??? ?? 2 ???. ?????????:##960",72
Оператор "Мотив" у него USSD *102#
В USSD запросах и ответах своя кодировка, эти сообщения надо сначала раскодировать. Код в инете есть, ищите
удивительное дело, но порой опсос возвращает в транслите, порой идут знаки "??????"
у опсос Мотив есть USSD запрос поддержки транслита *100*1# но особо ничего не дало
Борьба окончилась тем, что вылавливаю цифры баланса
Но есть гараздо серьезнее беда - попробую описать...
Опросил баланс и отправляю смс на свой номер с ответом баланса - и идет трижды отправка смс :(
и на других примерах также выполнение через SoftwareSerial приводит к нескольким исполнениям в терминал
все перепробовал - ничего не помагает - поможете?
что бы не мучаться, я бы рекомендовал всегда в UDF получать данные, да, сложнее запрограммировать, но всегда работает корректно.
Опросил баланс и отправляю смс на свой номер с ответом баланса - и идет трижды отправка смс :(
и на других примерах также выполнение через SoftwareSerial приводит к нескольким исполнениям в терминал
все перепробовал - ничего не помагает - поможете?
В чудеса не верю. Если приходят 3 СМС - значит три раза отправляете, других вариантов нет.
показывайте код.
после или перед 60 строкой очистить буфер приема _response
делаю следующей строкой
скейтч не отрабатывает
делаю следующей строкой
скейтч не отрабатывает
без слова String
вы вообще с областью видимости переменных дружите?
Upd: лучше даже до 60 строки очистить буфер.
делаю следующей строкой
скейтч не отрабатывает
где делаете? - укажите номер строки. В скетче не нашел.
и? работает? три СМСки уже не шлет?
и кстати я писал - поменяйте 60 и 61 строку
и? работает? три СМСки уже не шлет?
и кстати я писал - поменяйте 60 и 61 строку
не важно в какой строке указано String _response = "";
код не отрабатывает отправку
и? работает? три СМСки уже не шлет?
и кстати я писал - поменяйте 60 и 61 строку
не важно в какой строке указано String _response = "";
код не отрабатывает отправку
беда :(
значит нужно глубже разбираться (я тут туповат),
но мне кажеться или вы читать не умеете или специально троллите,
писали же что строка должна без слова String, а вы как упрямец воткнули целиком.
во вторых если я правильно понял код у вас запрос баланса сразу после включения, соотвественно при каждом нажатии "Загрузить" в Arduino IDE МК сбрасывается и шлет СМС, если ошибкак компиляции, сброс все равно происходит. Я например вчера таким образом заказчику вместо одной СМС послал 3 штуки по роуминговым тарифам из ЦФО в Калининград.
_response = "";
и это тоже не помогает
я не троллю, просто не силен в программировании
код отрабатывает когда запускаю монитор порта - посомтреть, как идет исполнение
_response = "";
и это тоже не помогает
я не троллю, просто не силен в программировании
код отрабатывает когда запускаю монитор порта - посомтреть, как идет исполнение
А запускаете сразу после компиляции? :)
вот и ответ - при запуске монитора аналогично МК перезапускается.
Попробуйте при запущенном окне монитора нажать "Загрузить" и посмотреть что получится.
код отрабатывает когда запускаю монитор порта - посомтреть, как идет исполнение
а можно подробнее, что значит "не отрабатывает" без монитора порта и как он отрабатывает с монитором.
Непонятно.
не отрабатывает
вот что в мониторе порта
Start!
AT
OK
AT+CUSD=1,"*102#"
OK
А дальше должно быть сообщение от оператора, или вы даже не подождали секунд 30
а дальше ничего нет, и даже если подождать более 30 секунд
как говорится чудес не бывает, другую команду пробовали? *100# *105#
или модем с проблемой (как например у меня с А6 было - аналогично баланс не давал),
или оператор тупо ничего не возвращает.
пробовал другие коды USSD - нет эффекта
НО если убрать строку _response = "";
все работает, НО несколько раз исполняется отправка смс
если убрать строку _response = "";
при включенном мониторе, нажать "Загрузить" - три раза отправится СМС?
покажите вывод в монитор порта.
видимо друзья переклинило опсос от моих запросов - не отвечает
а скейтч взаимодействия с модулем - звонок на модуль и блин - отрабатывает
Добрый день! Столкнулся с проблемой: M590E (rev.1.30e) видит SIM, но не регистрируется в сети и не потребляет больше 0,14 А. Перечитал всю тему, гуглил, бесполезно.
Ответы из гипертерминала:
Что проверял:
Фото платы:
(крепление на слоте SIM было отломано, но прижим проверял, нормально).
UPD. Приобрел SIM800L, заработал с первого раза. +CREG выдает 0,1. +COPS: 0,0,"MegaFon", звонки проходят. Либо M590E попался бракованным, либо я его повредил при пайке.
Либо M590E попался бракованным, либо я его повредил при пайке.
либо на плате непропай или сопля. Я бы начал с проверки всех соединений...
Добрый день! Столкнулся с проблемой: M590E (rev.1.30e) видит SIM, но не регистрируется в сети и не потребляет больше 0,14 А. Перечитал всю тему, гуглил, бесполезно.
да вы не гуглили... здесь я неединижды писал - китайцы шлют битые 590.. короткое замыкание по питанию. точка..
Добрый день! Столкнулся с проблемой: M590E (rev.1.30e) видит SIM, но не регистрируется в сети и не потребляет больше 0,14 А. Перечитал всю тему, гуглил, бесполезно.
да вы не гуглили... здесь я неединижды писал - китайцы шлют битые 590.. короткое замыкание по питанию. точка..
оффтоп: вы - тот самый, который с ixbt?
я здесь писал..
Но КЗ по питанию означет полный "труп", не так ли? А в моем случае он выводит список сетей и данные симки.
МОЖЕТЕ СНЯТЬ КРЫШКУ И ПОПРАВИТЬ кз по питаннию. думаю разберетесь.
Ктото сталкивался с подобной проблемой:
ADT - звонит нормально
но при чтении/удалении смс: +CMS ERROR: memory failure, смски также не приходят.
На телефоне на сим-карту смс приходят, на модуле - нет
Short Circuit, приветствую. а есть идеи почему так.
собрал модуль стандартный, все без особых плясок подключилось. подпаял кондер на вход, поставил 12в блок 2а, через лмку выставил 4.4в (на 4.3 и ниже упорно в сети регистрироваться не хотел), через резисторы и диод развел рх тх, залил скетч, гонял пару дней на макетках (словил пару зависаний по смс, при чем модуль по звонку был доступен), через неделю, после очередного ребута по питанию, модуль сеть ловить перестал, диод горит просто красным (до этого мигал). Начал копать, почему так. думал уже спалил может, упорно выдавал +CSQ: 99.99, +CPAS: 1 по всем симптомам, как у парня с 5ой страницы этой темы и не хотел не в какую региться.
Ну вот сегодня в итоге, докрутил лмку, что начал работать на 5.2в. Из обвеске кондер на входе по питанию 10в 1500 uf. На выводе vbat мерю - 3.9в (с 3.8-3.7, не региться собственно). Китайская магия?:)
да, на 4.4в плата вобще холодная, не грелась асболютно. выше 4.7 на лмке когда выворачиваешь - теплая. 38 градусов пирометр в пике показывает.
Личные наблюдения про модуль:
Те, кто пишет, что ему надо 2А на вход, тоже не все даташит конечно читали. Это только когда кондер на 10. Установка 1000 мкф, снижает пиковое потребление до 0.6, по даташиту. Опытно проверено. Подтверждено.
Второе. Атенна в комплекте, проводок платой,неизвестно как рассчитана. В 80% случаях у меня модем с антенной теряется. Без нее-только при сильных провалах питания. И то, из-за макетных проводов, которые тонкие.
В мониторе порта:
На RX ставила делитель из резисторов, результат тот же. В чем дело может быть?
Разобралась. Работает на скорости 115200