Страница 36 из 63

Блок пользователя для работы с GSM

Добавлено: 24 янв 2017, 16:50
vd153
OlegAn1962 писал(а):vd153, примерно так:
Прикрепления: 1a.flp(819Kb)
а что это за расширение файла?

Блок пользователя для работы с GSM

Добавлено: 24 янв 2017, 16:58
OlegAn1962
.flp ? Файл Flprog

Блок пользователя для работы с GSM

Добавлено: 24 янв 2017, 20:37
Слимпер
demonkolAnydy
Вот не понятно почему у вас  модуль выдает ERROR  в ответ на запрос баланса, а потом присылает таки ответ.
По этому блок точно не может выдать ответ, после ответа ERROR, блок считает, что команда не прошла и не обрабатывает результат.
Надо понять в чем тут дело.

Anydy, а у вас вообще по чему  то ответ приходит не GSM, а в   кодировки UCS2 (UNICODE) присылает

Может кто то просто напрямую, через терминал подать команду и посмотреть результат.
Я еще по ищу информацию

Добавлено (24.01.2017, 20:37)
---------------------------------------------
demonkolAnydy
Не могу пока сделать, не ясно из-за чего ошибка лезит, в ответ на запрос.
Как я писал, если есть возможность проеверти напрямую, команды:
AT+CMGF=1
AT+CSCS="GSM"

А дальше 
AT+CUSD=1,"#100#"  //Вместо 100 ваш код запроса баланса

Можно еще попробовать

ATD#100# //Вместо 100 ваш код запроса баланса

Если модуль и так будет присылать ERROR, то тут я точно не чего ни сделаю.

Блок пользователя для работы с GSM

Добавлено: 24 янв 2017, 20:56
demonkol
Слимпер писал(а):Не могу пока сделать, не ясно из-за чего ошибка лезит, в ответ на запрос.Как я писал, если есть возможность проеверти напрямую, команды:
AT+CMGF=1
AT+CSCS="GSM"

А дальше
AT+CUSD=1,"#100#"  //Вместо 100 ваш код запроса баланса
 Проверил через терминал все без ошибок
[spoiler=Спойлер][/spoiler] 
Отправил запрос баланса несколько раз подряд, все ОК ошибок нет.

[spoiler=Спойлер][/spoiler]

Блок пользователя для работы с GSM

Добавлено: 24 янв 2017, 21:24
OlegAn1962
Слимпер, а нельзя ли к блоку Отладка приделать строковый выход, а уже из полученных данных , кому надо, будет выделять строку баланса средствами Flprog. У меня блок Отладка тоже видит ответ:

[spoiler=Спойлер]Message module: 
GSM_team_room: 7
Message module: OK
GSM_team_room: 7
Command: AT+CUSD=1,"#100#"
Message module: 
GSM_team_room: 7
Message module: OK
GSM_team_room: 7
Expected Answer: +CUSD
Real  Answer: 
Command: AT+CUSD=1,"#100#"
Message module: 
GSM_team_room: 7
Message module: +CME ERROR: operation not allowed
GSM_team_room: 7
-77
-77
-77
-77
-77
-77
Message module: 
GSM_team_room: 7
Message module: +CUSD: 0, "Balance:48,56r,Limit:0,01r ", 15
GSM_team_room: 7
-77
-77
-77[/spoiler]

Блок пользователя для работы с GSM

Добавлено: 24 янв 2017, 22:56
Anydy
Слимпер писал(а):твет приходит не GSM, а в кодировки UCS2 (UNICODE) присылает
Проверил через терминал, ошибку не выдает, но кодировка на GSM не меняется
Видимо оператор USSD на русском отправляет, смс на английском приходят нормально.
Разобрался...действительно оператор отправлял на русском, переключил в транслит все приходит баланс, но только в отладке и с ошибкой как выше написал. В самом блоке USSD тишина...
[spoiler=Спойлер]AT+CMGF=1
OK
AT+CSCS="GSM"
OK
AT+CUSD=1,"#105#"
OK

+CUSD: 2, "004F0043005400410054004F004B002000310035002E0036003300200070002E002004170430043F044005408405007340340300300500300340030040E40B30240500034034534034020014040003070"7
ATD#105#
+CUSD: 2, "004F0043005400410054004F004B002000310035002E0036003300200070002E002004170430043F04400540840500734E340300300500500340030340E40B30340500034E30534234020014D40000070"7[/spoiler]

Добавлено (24.01.2017, 22:56)
---------------------------------------------
OlegAn1962 писал(а):нельзя ли к блоку Отладка приделать строковый выход, а уже из полученных данных , кому надо, будет выделять строку баланса
Не думаю, отладка на то и отладка что бы выявлять ошибки. Скорее всего лишняя загрузка контроллера и куча инфы в сериал порт абсолютно не нужна в обычной работе схемы.

Блок пользователя для работы с GSM

Добавлено: 24 янв 2017, 22:59
OlegAn1962
---------------------------------------------
Anydy писал(а):отладка на то и отладка что бы выявлять ошибки. Скорее всего лишняя загрузка контроллера и куча инфы в сериал порт абсолютно не нужна в обычной работе схемы.
Так я и написал, кому надо, тот включит этот блок. Если, конечно не найдется другого способа получить баланс.

Блок пользователя для работы с GSM

Добавлено: 25 янв 2017, 00:30
OlegAn1962
Вот еще непонятка. В проекте при звонке на модуль после третьего гудка модуль должен сбрасывать входящий вызов. При первом вызове так и происходит, но если на модуль позвонить второй раз, то он сбрасывает уже после первого гудка. На старом блоке такая же программа отрабатывала нормально.

Блок пользователя для работы с GSM

Добавлено: 25 янв 2017, 05:41
Слимпер
OlegAn1962 писал(а):Вот еще непонятка. В проекте при звонке на модуль после третьего гудка модуль должен сбрасывать входящий вызов. При первом вызове так и происходит, но если на модуль позвонить второй раз, то он сбрасывает уже после первого гудка. На старом блоке такая же программа отрабатывала нормально.
Вот это, постараюсь вечером проверить.
Anydy писал(а):Не думаю, отладка на то и отладка что бы выявлять ошибки. Скорее всего лишняя загрузка контроллера и куча инфы в сериал порт абсолютно не нужна в обычной работе схемы.
Это да, выдача данных в ком порт довольно тяжелая для контроллера операция, и памяти жрет очень много. 
Anydy писал(а):Разобрался...действительно оператор отправлял на русском, переключил в транслит все приходит баланс, но только в отладке и с ошибкой как выше написал.
А можно привести результат с терминала где видно баланс на английском.

demonkolOlegAn1962Anydy,   Кажется понял в чем проблема, в 800 модуль выдает Ок сразу после команды и не после получения сообщения, а у меня была реакция на получение статуса ОК (в М590 ОК идет именно после получение ответа ).
Попробую сделать другой обработчик для 800.

Блок пользователя для работы с GSM

Добавлено: 25 янв 2017, 06:22
vovka1973
Слимпер ,а вы можете добавить вход в блок как смс только для звонка

Блок пользователя для работы с GSM

Добавлено: 25 янв 2017, 06:39
Слимпер
vovka1973 писал(а):Слимпер ,а вы можете добавить вход в блок как смс только для звонка
Не понял вопрос, а вы блок GSM_Звонки не смотрели?

Блок пользователя для работы с GSM

Добавлено: 25 янв 2017, 06:58
vovka1973
Спасибо увидел ,просто в блоке искал
Все работает и смс и звонки
А ещё вопрос как блок подружить с Уно и нано

Блок пользователя для работы с GSM

Добавлено: 25 янв 2017, 07:19
MaD
Слимпер, Можно ли сделать блок для М590 что бы он работал не с телефонной книгой, а всего с одним номером указанным в настройках?
Мой М590е ни в какую не хочет с телефонной книгой работать, настроил всё как в инструкции написано, а он всё равно от всех левых номеров "1" на выход GSM_Call выдает.
Или я что то недопонимаю в работе этого блока? Может он так и должен работать?

Блок пользователя для работы с GSM

Добавлено: 25 янв 2017, 07:32
Слимпер
vovka1973 писал(а):А ещё вопрос как блок подружить с Уно и нано
Почитайте описание блоков GSM_Основной и GSM_SoftwareSerial
MaD писал(а):Мой М590е ни в какую не хочет с телефонной книгой работать, настроил всё как в инструкции написано, а он всё равно от всех левых номеров "1" на выход GSM_Call выдает.Или я что то недопонимаю в работе этого блока? Может он так и должен работать?
Ну да, так оно и есть, проверка идет только при исходящем вызове или исходящей СМС.
Входящие не обрабатываются этим фильтром.

Блок пользователя для работы с GSM

Добавлено: 25 янв 2017, 08:40
MaD
Слимпер, Сложно будет реализовать что бы всего 1 номер вбивался в настройках и по нему уже выдавалась единица на выходе GSM_Call?

Блок пользователя для работы с GSM

Добавлено: 25 янв 2017, 08:49
vovka1973
Слимпер писал(а):Почитайте описание блоков GSM_Основной и GSM_SoftwareSerial
Да вроде читаю там и все равно ошибка при компиляции

Блок пользователя для работы с GSM

Добавлено: 25 янв 2017, 11:50
chmak2007
vovka1973 писал(а):а кто как делает задержку на включение модема при перезагрузке можно узнать ?
Я сделал на MOSFET. Подаю сначала 9V потом MOSFET потом Линейные стабилизаторы на 5V ну и электролитный конденсатор. Ну и в коде программе ставишь задержку на включения модуля. Все работает отлично.

Блок пользователя для работы с GSM

Добавлено: 25 янв 2017, 13:17
Anydy
vovka1973 писал(а):Да вроде читаю там и все равно ошибка при компиляции
Все работает, без разницы, Уно или Нано или микро.
Прописать пины, скорость и Serial_S

Добавлено (25.01.2017, 12:59)
---------------------------------------------
Слимпер писал(а):А можно привести результат с терминала где видно баланс на английском.
Да, модуль сначала отвечает ОК, а потом только приходит ответ.
На транслите:
[spoiler=Спойлер]AT+CMGF=1
OK
AT+CSCS="GSM"
OK
AT+CUSD=1,"#105#"
OK
+CUSD: 2, "OCTATOK 15.63 p. Xochetsya lyubvi? Otpr. tekst o sebe na 684 (bespl.)", 0[/spoiler]

Добавлено (25.01.2017, 13:17)
---------------------------------------------
Слимпер писал(а):проверка идет только при исходящем вызове или исходящей СМС.Входящие не обрабатываются этим фильтром.
Опа, извените, но это уже серьезная недоработка.
А как же аутентификация входящих звонков и смс?
Так получается звони кто хочешь, пиши смс и управляй моим хозяйством?
Надо обязательно сделать фильтр входящих звонков и смс по заранее предустановленным номерам!

Блок пользователя для работы с GSM

Добавлено: 25 янв 2017, 13:36
vovka1973
Anydy писал(а):Все работает, без разницы, Уно или Нано или микро.
Прописать пины, скорость и Serial_S
Везёт у меня ну ни как ни на линуксе ни на виндовс программа 2,3

Блок пользователя для работы с GSM

Добавлено: 25 янв 2017, 14:59
Слимпер
Цитата MaD
Сложно будет реализовать что бы всего 1 номер вбивался в настройках и по нему уже выдавалась единица на выходе GSM_Call?
Anydy писал(а):Опа, извените, но это уже серьезная недоработка.А как же аутентификация входящих звонков и смс?
Так получается звони кто хочешь, пиши смс и управляй моим хозяйством?
Надо обязательно сделать фильтр входящих звонков и смс по заранее предустановленным номерам!
Ну как вы это себе представляете, если номер один еще можно понять,
 А вот если вам надо с трех-пяти номеров управлять и при том у каждого свои права:
Один может только запросить какая сейчас температура, другой открыть ворота, третий снять с сигнализации.

И так у каждого пользователя свои запросы.

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

Блок телефонная книга вообще нужен не для запрета, а для возможности использовать названия контактов вместо номеров, и тем самым можно было поменять номер управления без пере прошивки контроллера. На верное вообще лучше убрать параметр White_list, во избежание таких неверной трактовки.

Люди это среда программирования, а не стол заказов готовых программ. Подумайте маленько  

  

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

Добавлено (25.01.2017, 14:59)
---------------------------------------------
vovka1973 писал(а):Везёт у меня ну ни как ни на линуксе ни на виндовс программа 2,3
Программу вашу выложите или в личку кинте.