GPRS Shield не читает SMS

Тема в разделе "Arduino & Shields", создана пользователем rlepricon, 5 май 2016.

  1. rlepricon

    rlepricon Нуб

    Добрый день.

    Разбираюсь с Amperka GPRS Shield, запускаю скетч из примеров
    http://wiki.amperka.ru/продукты:gprs-shield#чтение_sms
    Загрузка проходит нормально. Открываю монитор COM-порта
    Отправляю СМС на номер симки, которая вставлена в GPRS Shield и не получаю никакой реакции.
    Скетчи со звонками работают нормально.

    Подскажите, в какую сторону копать?

    Спасибо.
     
  2. Onkel

    Onkel Гуру

    вынуть симку и на обычном телефоне проверить, приходят ли смс.
     
  3. komrad

    komrad Нерд

    Тоже разбираюсь с этой проблемой. Попробуйте убрать вызов gprs.ifSMSNow() из примера. И чтение смс функцией void GPRS::readSMS(char *message, char *phone, char *datetime) у меня не заработало. Вместо нее работает bool GPRS::readSMS(int messageIndex, char *message,int length)
     
    rlepricon нравится это.
  4. rlepricon

    rlepricon Нуб

    Если вставить симку в телефон, то смски приходят нормально без каких-либо задержек.
    Вставил опять в GPRS Shied и тишина, никакой реакции.


    А как с помощью bool GPRS::readSMS(int messageIndex, char *message,int length) получить номер телефона с которого пришла СМС?
    А если СМС нет, то функция возвращает false?
    Спасибо за подсказку, попробую.

    А какие-либо комментарии от производителя есть? :)
     
  5. komrad

    komrad Нерд

    Сам пытаюсь понять как получить номер телефона. Похоже придется править библиотеку тк похоже она не совсем совместима с последней прошивкой sim900.
    вот кусок кода который у меня работает и читает текст смс на латинице и то не длиннее 32 символов
    Код (C++):
      messageIndex = gprs.isSMSunread();
      if (messageIndex > 0)
      {
        gprs.readSMS(messageIndex, message, MESSAGE_LENGTH);
        Serial.println(message);
      }
     
    rlepricon нравится это.
  6. rlepricon

    rlepricon Нуб

    Спасибо!
     
  7. AlexV-777

    AlexV-777 Нуб

    Присоединяюсь к вопросу. Если брать код из примеров - СМС не читаются!
    Реально СМС приходит - если вынуть симку из шилда и вставить в телефон - все СМС-ки будут там.
    Метод ifSMSNow() всегда возвращает false.
    Код komrad работает норм.
    Кривая библиотека?
     
  8. MDV

    MDV Гик

    Проверь в настройках оповещения о получение смс самим шилдом (чипом). Скорее всего у Вас команда "AT+CNMI?" даст "CNMI=2,1,0,0,0". Замените вторую цифру на "2" и скетч заработает. (AT+CNMI=2,2,0,0,0)
     
  9. AlexV-777

    AlexV-777 Нуб

    Вах! Заработало! Пасиб!