sim800l не поднимает трубку

Ответить
yankarelia
Рядовой
Сообщения: 4
Зарегистрирован: 29.04.2018{, 23:39}
Репутация: 0
Имя: ЯнЯн

sim800l не поднимает трубку

#1

Сообщение yankarelia » 30.04.2018{, 19:02}

Добрый вечер форумчане, долго искал причину, но не смог её найти, поэтому прошу Вашей помощи.
пытаюсь собрать сигнализацию для гаража начитался статей, насмотрелся видео, собрал проэкт как в видео уроке ( но сим800 не поднимает телефон. Если залить другой скетч, то при прописывании ATA в мониторе порта он поднимает трубку и понимает дтмф команды.В Чем моя ошибка ?

Код: Выделить всё

#include <SoftwareSerial.h>                     // Библиотека програмной реализации обмена по UART-протоколу
SoftwareSerial SIM800(8, 9);                    // RX, TX

String _response = "";                          // Переменная для хранения ответа модуля
void setup() {
  Serial.begin(9600);                           // Скорость обмена данными с компьютером
  SIM800.begin(9600);                           // Скорость обмена данными с модемом
  Serial.println("Start!");

  sendATCommand("AT", true);                    // Отправили AT для настройки скорости обмена данными
  _response = sendATCommand("AT+DDET=1", true); // Включаем DTMF
}

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\n", 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())           // Ожидаем прихода данных (ответа) от модема...
    Serial.write(SIM800.read());    // ...и выводим их в Serial
  if (Serial.available())           // Ожидаем команды по Serial...
    SIM800.write(Serial.read());    // ...и отправляем полученную команду модему
}
Вложения
gsm garaz.flp
(752.89 КБ) 75 скачиваний

whitevip
Лейтенант
Сообщения: 492
Зарегистрирован: 01.04.2017{, 20:25}
Репутация: 5
Имя: Имя

sim800l не поднимает трубку

#2

Сообщение whitevip » 30.04.2018{, 20:11}

yankarelia, Дело в блоках, вот последняя версия блока для SIM800 он рабочий и там есть все функции.
SIM800.ubl
(1.53 МБ) 101 скачивание
Отправлено спустя 3 минуты 45 секунд:
вот еще бок для этого модуля, тут блоки добовляют по отднльности, все эти блоки я проверял и они работают.
GSM_NEW 0.5.1b.ubl
(669.84 КБ) 93 скачивания
:smile37:

yankarelia
Рядовой
Сообщения: 4
Зарегистрирован: 29.04.2018{, 23:39}
Репутация: 0
Имя: ЯнЯн

sim800l не поднимает трубку

#3

Сообщение yankarelia » 30.04.2018{, 20:44}

Спасибо за оперативность, скачал, но не помогло. 1й файл выдаёт ошибку при загрузке, а когда ставлю 2е блоки такая же проблема.
ps Когда в ручную прописываю автоматическое поднятие телефона - он поднимает любой телефон даже если делаю проверку только указанных телефонов.
Вложения
скрин.jpg

whitevip
Лейтенант
Сообщения: 492
Зарегистрирован: 01.04.2017{, 20:25}
Репутация: 5
Имя: Имя

sim800l не поднимает трубку

#4

Сообщение whitevip » 30.04.2018{, 22:21}

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

Отправлено спустя 17 минут 3 секунды:
yankarelia, первый файл нужно ставить без дополнительных блооков. я только что проверил и все впорядке нет не каких ошибок. приложите проект.
:smile37:

Аватара пользователя
Golan
Капитан
Сообщения: 827
Зарегистрирован: 26.11.2017{, 23:18}
Репутация: 77
Откуда: Деревня, 98 домов в Мордовии
Имя: Владимир
Контактная информация:

sim800l не поднимает трубку

#5

Сообщение Golan » 30.04.2018{, 22:49}

yankarelia, вот мой файл с видео, итоговый вариант, пробуйте, вернее меняйте под себя.

Отправлено спустя 1 минуту 28 секунд:
А сеть находит, инициализация проходит?
Вложения
DTMF для ворот с татчиком темп и озвучкой.rar
(87.83 КБ) 87 скачиваний
Добро не ценится в современном мире, люди от него наглеют!

yankarelia
Рядовой
Сообщения: 4
Зарегистрирован: 29.04.2018{, 23:39}
Репутация: 0
Имя: ЯнЯн

sim800l не поднимает трубку

#6

Сообщение yankarelia » 30.04.2018{, 22:53}

Да если пользоваться одним блоком сим 800 (который первый) ошибки не выдаёт, но толку тоже нету... дело в какой то мелочи - но в какой ?
Да сеть находит, но трубку не берёт, спасибо, сейчас попробую.
Вложения
скрин.jpg
тест.flp
(1006.6 КБ) 62 скачивания

whitevip
Лейтенант
Сообщения: 492
Зарегистрирован: 01.04.2017{, 20:25}
Репутация: 5
Имя: Имя

sim800l не поднимает трубку

#7

Сообщение whitevip » 30.04.2018{, 22:54}

Golan, я конечно извиняюсь, но когда я разберался с этим модулям я пошел на Ваш канал скачал проект удалил не нужное оставив блоки для SIM800 но у меня была проблема в точности как у ТС, после чего я тут на форуме скачал более новые блоки и все заработало, сейчас все блоки у меня в программе проверены и полностью работают.

Отправлено спустя 2 минуты 2 секунды:
yankarelia, а Вы попробуйте с компаратора строк прямой подать на вход поднятия.

Отправлено спустя 5 минут 52 секунды:
yankarelia, еще я Вам скажу тут на форуме есть тема где описывают как прошить этот модуль для того что бы указать на какой скорости он должен работать и это нужно сделать для уверености. Модуль сам по себе звонки будет принимать если на него подавать нужное для него питание, после чего нужно убедится что он общается с ардуиной, подсоедените экран и попробуйте вывести номер входящего звонка или с компоратора подайте на 13 пин и если при звонке лампа горит то идем дальше.
:smile37:

yankarelia
Рядовой
Сообщения: 4
Зарегистрирован: 29.04.2018{, 23:39}
Репутация: 0
Имя: ЯнЯн

sim800l не поднимает трубку

#8

Сообщение yankarelia » 30.04.2018{, 23:09}

Golan, Спасибо огромное, заработало, теперь буду копать, что бы понять что я сделал не так и он не поднимает трубку. Спасибо!
whitevip, Звонок через МП я поднимал командой ата, скорость я установил 9600 и сохранил. Сейчас у меня заработало с блоками Golan, следовательно либо где то ошибка у меня, либо существует баг программы.Первый вариант более вероятен, но нужно понять где...

Аватара пользователя
Golan
Капитан
Сообщения: 827
Зарегистрирован: 26.11.2017{, 23:18}
Репутация: 77
Откуда: Деревня, 98 домов в Мордовии
Имя: Владимир
Контактная информация:

sim800l не поднимает трубку

#9

Сообщение Golan » 01.05.2018{, 00:42}

whitevip писал(а):
30.04.2018{, 23:02}
Golan, я конечно извиняюсь, но когда я разберался с этим модулям я пошел на Ваш канал скачал проект
У меня на канале я проекты не выкладываю, так как это практически исключает обдумывание, я много смотрел Грачика, все отлично, за что ему спасибо большое, но как сунулся в более менее большой проект, если не делать самому, а скачать и потом разбираться, для меня оказалось сложным.
yankarelia писал(а):
30.04.2018{, 23:09}
Golan, Спасибо огромное, заработало
Да совсем не за что, я же тоже новичек, да и видео стал снимать, что бы потом не забыть что и как делал, так сказать для себя
Добро не ценится в современном мире, люди от него наглеют!

Ответить

Вернуться в «Помогите, а то я "нимагу"»