Ребята здесь подробное описание команд для модуля NEOWAY M590, схема подключения, особенности работы http://radiolaba.ru/microcotrollers/gsm-modul-neoway-m590-opisanie-i-komandyi-upravleniya.html
Люди ! Скажите резистор с каким сопротивлением стоит со стороны Карты (R2 -который) на большой плате для самостоятельной сборки. Не положили в набор.... Спасибо.
Спасибо однако.. на диоды, которые мигают и светятся - я поставил по 200 ом... ...значит будем ставить 4к7
Ожил железка. Лампочкой моргает. удалось перевести его на 19200 Но от других команд Ок не возвращает.... чо тока не делал.. Подскажете ?
Такая же фигня! Никак не получается запустить через DC-DC преобразователь. А так через USB и на UNO и через USB-UART спокойно все работает. Не пойму в чем может быть дело? Кстати если UNO только от батареи такая же фигня. СИМка подключается, звонки принимает но на экран ничего не выводит. Не удалось завести через преобразователь?
Приветствую! Давно валялся сей модуль и вчера вечером решил с ним поиграться... Дома у меня мак и я часа 3 убил на то чтобы увидеть сей модуль через дуину в режиме юсб-уарт. Так и не завелось. Сегодня на работе полдня разбирался уже в винде - сначала таки достучался до модема и стали пересылаться АТ-команды, но все что касалось работы с симкой возвращало Еррор. В итоге выяснил, что в момент старта при инициализации симки на ней есть напряжение, а потом пропадает. Воткнул другую симку и о чудо! В порт прилетело сообщение о готовности телефонной книги... Измерил напряжение на карточке - 1,8в. Первая симка древня, года 2003. Скорее всего она еще 5в и модуль физически ее не может раскачать даже при работе от внешнего источника. Современные симки все на низкие вольты рассчитаны. От дуины штука может работать только в режиме ожидания, как только начинаются активные манипуляции с сетью - идет падение напряжения и перезапуск. Поэтому только качественное внешнее питание! Ну и вопрос: кто-нибудь пробовал сохранять конфиг в еепром модуля, чтобы не иницилизировать его каждый раз при старте? Это ж лишние строки и лишняя память контроллера. В документации написано, что 0 профиль грузится по умолчанию, но специальной командой можно вызывать другой. Соотв можно вместо инициализации создать несколько профилей, которые можно будет подгружать в зависимости от ситуации.
Огромное спасибо за инфу. Собираюсь сделать проект для контроля температуры на даче, чтоб я отправлял команду в смс на дачу, на ардуино и обратно получал смс с температурой. Скетч для термодатчика с помощью ютуба написал, залил и он работает. Скиньте пожалуйста ссылку на библиотеку для модуля NEOWAY M590 и помогите со скетчем, укажите хотя бы направление в какой структуре писать. Заранее огромное СПАСИБО.
на 2ой странице листинг для работы с модулем библиотека ему не нужна, тк все работает через последовательный порт
При загрузке скетча выдает ошибку avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00 ??? #include <SoftwareSerial.h> SoftwareSerial mySerial(2, 3); // RX, TX int ch = 0; String val = ""; #define MASTER "+79852465810" //укажите телефон хозяина void setup() { Serial.begin(9600); //подключаем порт компьютера Serial.println("GSM Neoway M590 example"); mySerial.begin(19200); //подключаем порт модема (при других скоростях не отвечает) mySerial.println("ATI"); //вывести в терминал иноформацию о модеме delay(100); mySerial.println("AT+CSQ"); //вывести в терминал уровень сигнала (если 99, то связи нет) delay(100); mySerial.println("AT+CLIP=1"); //включаем АОН delay(100); mySerial.println("AT+CMGF=1"); //режим кодировки СМС - обычный (для англ.) delay(100); mySerial.println("AT+CSCS=\"GSM\""); //режим кодировки текста delay(100); mySerial.println("AT+CNMI=2,2"); //отображение смс в терминале сразу после приема (без этого сообщения молча падают в память) } void loop() { if (mySerial.available()) { //есть данные от GSM модуля delay(200); //выждем, чтобы строка успела попасть в порт целиком раньше чем будет считана while (mySerial.available()) { //сохраняем входную строку в переменную val ch = mySerial.read(); val += char(ch); delay(10); } Serial.println(val); // дублируем сообщение в терминал //----------------------- определение факта приема СМС и сравнение номера(ов) с заданным(и) if (val.indexOf("+CMT") > -1) { //если обнаружен СМС (для определения звонка вместо "+CMT" вписать "RING", трубку он не берет, но реагировать на факт звонка можно) if (val.indexOf(MASTER) > -1) { //если СМС от хозяина Serial.println("--- MASTER SMS DETECTED ---"); } else { Serial.println("NO MASTER SMS"); } //----------------------- поиск кодового слова в СМС (вообще эту часть надо поместить внутрь предыдущей, но если использовать кодовое слово не совпадающее с сообщениями модема, то не обязательно) if (val.indexOf("sendme") > -1) { // если обнаружено кодовое слово Serial.println("send you ok"); // сообщаем об этом в терминал (если нужно) sms("yes sir!", MASTER); // отвечаем смской } else { // если другое слово или вообще пустое сообщение Serial.println("no send you"); sms("no sir!", MASTER); } 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); }
После загрузки скечта пишет вот эти ошибки avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xf0 avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x00 avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xf0 avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xf0 avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xf0 avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xf0 avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xf0 avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xf0 avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xf0 avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x00 на команду АТ в командной строке не реагирует, что не так? Появляется надпись Goodnight moon!
Есть и у меня одна проблемка. Модуль стал упорно отказываться от регистрации в сети. До этого работал довольно устойчиво, но в последнее время стали возникать проблемы. Модуль стартует, через гипертерминал с помощью АТ команд общается. При проверке уровня сигнала всё норм AT+CSQ +CSQ: 27,0 OK А вот при попытке получить информацию об операторе выдаёт AT+COPS? +COPS: 2 OK Как я понял, видит два оператора, но ни в одной из сетей не регистрируется. Соответственно звонок на модуль выдаёт - абонент не в сети. Через некоторое время (когда через пару минут, когда через пол часа) регистрация происходит. Всё начинает работать - звонки, СМС и т.д. Оператор МТС-Украина. Может у кого такое было и как проблема решилась?
Так они и общаются по UART, т.е. через ком-порт. Запускайте терминал хотя бы через IDE и пишите туда команды.
Да, всё правильно. Подключай модуль к переходнику модуль переходник RX ----------- TX TX ------------ RX GND ---------- GND +5 ---------- +5 Запускай гипертерминал выбирай порт на котором определился твой переходник, в настройках порта установи скорость 9600 и управление потоком "Нет". Остальное без изменений. И через гипертерминал попробуй пообщаться с модулем с помощью АТ команд.
Модуль становятся компактнее и дешевле. Жаль, что так и нет 5V версии, но все равно уже лучше. Не понятно только готовое изделие это или набор для самостоятельной сборки как в прошлый раз. Приедет, отчитаюсь.