не работает? Neoway m590

SpeedWagon
Offline
Зарегистрирован: 14.02.2019

Почему в Мониторе порта модуль NEOWAYm590e не отвечает на команду "AT"?

В скетче входы 0,1 обозначил ка RX,TX.У самого модуля лампочки мигают значит готов к работе.

Напрямую модуль немогу подсоединить.

Irinka
Irinka аватар
Offline
Зарегистрирован: 28.06.2017

SpeedWagon пишет:

 

В скетче входы 0,1 обозначил ка RX,TX.У самого модуля лампочки мигают значит готов к работе.

 

SoftwareSerial SIM800(8, 9);

Вы здесь прописали 0 и 1?

 

Emer
Offline
Зарегистрирован: 02.11.2016

SpeedWagon пишет:

Почему в Мониторе

Зачем ОРАТЬ???

SpeedWagon пишет:
В скетче входы 0,1 обозначил ка RX,TX

В каком скетче? И как Вы выводы по умолчанию решили обозначить по свойму??

SpeedWagon пишет:
У самого модуля лампочки мигают значит готов к работе.

Не факт.

SpeedWagon пишет:
Напрямую модуль немогу подсоединить

Что значит напрямую? А вы его через что-то подсоединяете? Через что?

alexbmd
Offline
Зарегистрирован: 15.01.2016

Друзья хелп.

у M590 есть вывод 10 нога RING

на которм 30мс идет низкий сигнал во время СМС и звонков. 

Дополнительно в serial отправляется "RING" и на СМС и на звонок тоже RING

2 недели все работало хорошо. сегодня подключаю на звонки РИНГ идет на СМС пусто. перегрузил модем - не помогло. думаю ну ладно может в сериал только не отправляет.

настраиваю прерывание на этот вывод - звонок видит, есть низкий сигнал, на смс  пусто

сами смс приходят и читаются. есть мысли?

у когото было такое ? а возможно прошить модем новой прошивкой?

Emer
Offline
Зарегистрирован: 02.11.2016

Это к Ванге. Только она смогла бы помочь.

walera_kur
Offline
Зарегистрирован: 19.03.2019

Парни!!  помогите с кодом разобраться!

Сделал сигналку в гараж,  под землей хреновый уровень сигнала. Внешняя антена. Что бы ее расположить получше, написал блок где по приходу СМС отправляется значение AT+CSQ.

Не хватает мозгов как ответ модуля запомнить, что бы потом отправить СМСку.

пробывал так:

 {
                      // if(u == 1)
                       if(digitalRead(konc) == LOW)  // временно кнопка вместо СМС
                              {

                               
                                         
                                          Serial.println("Пришла СМС уровень");
                                          val = ""; //очищаем 
                                          mySerial.println("AT+CSQ");  //шлем модулю уровень сигнала
                                            delay(1000);
                                           
                                           u = 0; 
                             

                               if (mySerial.available())   //если есть данные от GSM модуля
                              {
                                  delay(200);    //выждем, чтобы строка успела попасть в порт целиком раньше чем будет считана
                              
                                  while (mySerial.available())  //сохраняем входную строку в переменную val
                                    {
                                          ch = mySerial.read();
                                    
                                          val += char(ch);
                                    
                                          delay(10);
                                    
                                        }
                              
                                  Serial.println(val);                    // дублируем сообщение в терминал посмотреть 
                              

                               {

                             
                                
                                   mySerial.println("AT+CMGS=\"+79221053***\""); // даем команду на отправку смс
                                    delay(100);
                                  mySerial.print("signal=  ");  // отправляем текст
                                    mySerial.print(val);   // и рядом переменную со значением                                     
                                    mySerial.print((char)26);          // символ завершающий передачу
                                    delay(20);
                                     Serial.print(val);
                                    Serial.println("отправлено");
                                }
                      }


                      }

И получается такая штука модуль отвечает - в  мониторе:

 AT+CSQ
 
+CSQ: 16,3
 
OK
 
AT+CSQ
 
+CSQ: 16,3
 
OK
 
два раза почему то, (эхо включал, отключал - все равно баден баден)
-дальше формируется СМС  и отправляется 
получаю на телефоне:
signal=AT+CSQ
Как сохранить вторую строку ответа модуляс цифрами, что бы потом вставить ее в СМС???
 
Emer
Offline
Зарегистрирован: 02.11.2016

Вот скажите честно, у Вас и программа так же написана, как Вы код выложили? Все вперекосяк?

Вы не видите, что читатьне удобно, или Вам пофиг? Если первое, то совершенно понятно почему что-то не работает, ибо Вы не видите. если второе-то зачем вопросы?

Код не читабелен никак, да и не совсем понятно, при копировании что-то потерялось или нет.

Мне например сразу не видно, откуда в 33 строке открывающая скобка. Перед ней что-то идет? Или это случайно выдранный кусок кода? Если кусок, то как просить помощи разобраться?

Второе, если делаете вывод в терминал (для проверки работоспособности), не просто выводите переменную, как у вас в строке 30, а сначала выводите описание, что выводите.

Serial.print("Переменная из строки 999 >");
Serial.println(val);

(Пример, ИМХО). 

Самим же удобно разбирать будет, что выдает программа.

п.с. 18,26,42 -для чего эти висяки? (delay). Ошибка не из-за них, но смысл в них?

walera_kur
Offline
Зарегистрирован: 19.03.2019
Так и есть!  Не спец я по писанию красиво.  Почитать бы где правила красивого писания.
  Я всю жизнь с железом работаю. Меня так же коробит, как тут половину ветки обсуждают  согласование уровней!! А  ATmega328 по датоштиту с кварцем 16мгц прекрасно работает  с напряжением питания 4.2 вольта. Сделайте ШИМ на 4.2 вольта, или тот же диод поставте в 5 вольт и этим напряжением питайте и модуль и ардуину, и все прекрасно работает.
А про кривой для чтения код - дело же наживное, не все сразу мастерами стали. Вот и я делаю первые шаги.
Конечно мне не пофиг, что читать не удобно, я не знаю как сделать, что бы удобно было!
Устройство звонит мне при открытии двери, и при получении СМС включает нагрев, температуру передает,...
И что бы мне самому не запутаться, для отработки блока при получении СМС Uroven - я временно сделал переменную "U" присваиваю U=1
 
И внизу вот этот блок который привел,  во 2й строке начинаю его выполнение, а в 13й U=0, что бы один раз выполнялась. дальше допер, что бы обойтись без посылок СМС для этого куска - привязал кнопку - строка №3.
 
Потом как все заработает вставлю его в то место, где он будет жить.Лишнее грохну.
Мне так удобнее. Сразу иду вниз и делаю опыты.
Было бы в ардуине возможнось выделить цветом фон например, что бы быстро найти то место, где ковыряешься. Я вот так придумал, уношу кусок вниз .
 
Как все таки поймать ответ модуля???
walera_kur
Offline
Зарегистрирован: 19.03.2019
Так и есть!  Не спец я по писанию красиво.  Почитать бы где правила красивого писания.
  Я всю жизнь с железом работаю. Меня так же коробит, как тут половину ветки обсуждают  согласование уровней!! А  ATmega328 по датоштиту с кварцем 16мгц прекрасно работает  с напряжением питания 4.2 вольта. Сделайте ШИМ на 4.2 вольта, или тот же диод поставте в 5 вольт и этим напряжением питайте и модуль и ардуину, и все прекрасно работает.
А про кривой для чтения код - дело же наживное, не все сразу мастерами стали. Вот и я делаю первые шаги.
Конечно мне не пофиг, что читать не удобно, я не знаю как сделать, что бы удобно было!
Устройство звонит мне при открытии двери, и при получении СМС включает нагрев, температуру передает,...
И что бы мне самому не запутаться, для отработки блока при получении СМС Uroven - я временно сделал переменную "U" присваиваю U=1
 
И внизу вот этот блок который привел,  во 2й строке начинаю его выполнение, а в 13й U=0, что бы один раз выполнялась. дальше допер, что бы обойтись без посылок СМС для этого куска - привязал кнопку - строка №3.
 
Потом как все заработает вставлю его в то место, где он будет жить.Лишнее грохну.
Мне так удобнее. Сразу иду вниз и делаю опыты.
Было бы в ардуине возможнось выделить цветом фон например, что бы быстро найти то место, где ковыряешься. Я вот так придумал, уношу кусок вниз .
 
Как все таки поймать ответ модуля???
walera_kur
Offline
Зарегистрирован: 19.03.2019

п.с. 18,26,42 -для чего эти висяки? (delay). Ошибка не из-за них, но смысл в них?

про это я сам не понимаю!! Перед началом реализации сигналки, много читал про М590, во всех примерах в инете естьт эта задержка. Я и тоже приделал. Не мешает - вдруг поможет чем то.

Все примеры предложенные для повторения,  при инициализации модема в начале кода делают по секунде и больше задержку. Я сделал цикл где ищу ответ от модема, как получил - дальше иду. 

Но для решения мой задачи эти задержки не вредят ни как.

Serial.print("Переменная из строки 999 >"); Это клевая идея! я писал типа "дошел до сюда" потом искал где это место в коде! беру на вооружение.

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

walera_kur пишет:

Serial.print("Переменная из строки 999 >"); Это клевая идея! я писал типа "дошел до сюда" потом искал где это место в коде! беру на вооружение.

Это и называется дебагинг,сообщениями по Сериал вылавливать ошибки и затыки в программе

StDenits
Offline
Зарегистрирован: 05.06.2018

Если кто работал с модулем Neoway M590E, то ответьте:
1) Действительно ли так нужен пин RING? Или наличие входящего звонка \ смски можно точно определять программно - АТ командами?

Допустим, номер модуля попадёт в базы рекламщиков и придёт смс или звонок - как отбиваться?

2) Как правильно перезапустить модуль, если он завис? Есть пины ON/OFF и EMERGOFF - по сути они делают одно и тоже.

Хотел посадить ON/OFF на землю и дёргать пин EMERGOFF.

3) Если пин DTR не нужен - он сажается на землю или остаётся неподключенным?

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

1) нет, АТ командами

и что, делайте определение своего номера

2) ON/OFF

3) нет, не надо, если подключите на землю, то модуль будет жить почти все время во сне

возьмите даташит и читайте

StDenits
Offline
Зарегистрирован: 05.06.2018

Valera19701 пишет:

возьмите даташит и читайте

Я-то как раз и читаю. Спрашиваю потому, что модуль ещё в пути и есть непонятные моменты.

А вот вы уже подзабыли \ не знаете. Поэтому, пожалуйста, не вводите в заблуждение.

По поводу пина ON\OFF написано, что если модуль находится в сбойном состоянии, то нормально его выключить нельзя. Только путём сброса. Но почему-то на схемах везде задействован именно пин ON\OFF.

По поводу пина DTR написано, что для входа в режим экономии энергии надо перевести его из высокого в низкий уровень, попутно выполнив АТ команду. Мне он не нужен, но на схемах он везде посажен на землю или задействован; хотя по даташиту пишут, что лучше (если он не используется) оставить неподключенным, как пины DCD - DSR, или замкнуть на RING.

Про точное определение наличия именно СМС или именно звонка только только с помощью АТ-команд - не нашёл. Как?

b707
Offline
Зарегистрирован: 26.05.2017

StDenits - вы уж определитесь - вы спрашивать пришли или нас экзаменовать. Если вы уверены. что знаете лучше отвечающих - ну так и разбирайтесь сами. А то всякое желание отвечать пропало, неохота на свой ответ потом проповедь выслушивать.

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

StDenits пишет:

Про точное определение наличия именно СМС или именно звонка только только с помощью АТ-команд - не нашёл. Как?

возьмите даташит на АТ команды и читайте

StDenits
Offline
Зарегистрирован: 05.06.2018

b707 пишет:

А то всякое желание отвечать пропало, неохота на свой ответ потом проповедь выслушивать.

Какую проповедь? Я написал конкретно что мне не понятно. Потом написал более развёрнуто - что именно мне не понятно. Но вместо ответов получил упрёк в проповеди и отсылку к RTFM.

Я думал, что большинство мудаков осталось на electronix, но, оказывается, и здесь их порядком.

Всё, вопросы закрыты. Спасибо. Буду мучаться сам.

alexbmd
Offline
Зарегистрирован: 15.01.2016

b707, я понимаю когда отвечают по делу. или если лень то просто в рид онли режиме посещают форум. а  нравоучениями поздно заниматься, как могли, родители его уже воспитали. да и остальным ни к чему это читать. форум опять же засоряется.

 

StDenits,   1) если МК спит как узнаешь что позвонили ?

2) разное делают. emerof - reset. в зависимости от твоей логики используй нужное

3) dtr - pull up его. или не трогай вообще. экономный режим там не такой уж и экономный. для экономии лучше вырубать его и МК в сон ложить, при подходящих условиях понятное дело.

а если ждем непонятно чего непонятно когда то огромная батарея или лучше розетка тебе в помощь

alexbmd
Offline
Зарегистрирован: 15.01.2016

Emer пишет:

Это к Ванге. Только она смогла бы помочь.

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

Sergey_Ch
Offline
Зарегистрирован: 15.01.2015

Коллеги ! Окажите помощь.

Дома все работает отлично, М590 не зависает, принимает и шлет СМС. На даче первые полчаса все в порядке, потом не отвечает на СМС. Понимаю, что уровень сигнала на даче хуже, но при перезагрузке Ардуины, опять восстанавливается работоспособность и все хорошо, проходит время - Ж-ноль-ПА. У М590 отдельный бесперебойный БП 4вольта до 5А на литиевых АКБ. ТХ-РХ согласованы по даташиту. Могут ли "слетать" стартовые насторойки модема при пропадании сети ? Или вообще в чем дело ???

 

Sergey_Ch
Offline
Зарегистрирован: 15.01.2015

Short Circuit!

У Вас на картинке еще кот облегчался в тапочки , отзовитесь, я прочел все ваши сообщения но не нашел ответа, но мне кажется, Вам удалось победить М590 !