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

Создаем свой блок. Вопросы, помощь знатоков.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

Max писал(а):Но следует учитывать, что в ответе есть и невидимые символы, которые в терминале не видны...
Есть ALTerminal программа, так вот в ней можно включить отображение символов подробнее я описывал Сообщение 224
Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06 сен 2015, 13:12
Откуда: Тюмень-Баку
Имя: Максим

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

Сообщение Max »

Все запросы делал в программе  ALTerminal.

Ответ в терминале на первый вариант запроса:
AT+CUSD=1,"*100#"
$0D$0A
OK$0D$0A
$0D$0A
+CUSD: 0, "041204300448002004370430043F0440043E04410020043F044$0D$0A
+CMT: "2416p616+63656w0","","16/09/16,20:51:08+24"$0D$0A
34$0D$0A
+CMT: "2416p616+6342$0D$0A
+CMT: "2416p60
Судя по всему это неправильно. И вот это у меня вылезало!

Ответ на другой второй вариант запроса:
AT+CUSD=1,"#100#"
$0D$0A
OK$0D$0A
$0D$0A
+CUSD: 0, "Balance:88,72r,Limit:0,01r ", 15$0D$0A

Этот ответ правильный!

Оператор  как на SIM800, так и в телефоне - МТС.
Последний раз редактировалось Max 16 сен 2016, 18:31, всего редактировалось 1 раз.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

Цитата Max
+CUSD: 0, "041204300448002004370430043F0440043E04410020043F044$0D$0A
Это ответ в USSD

Цитата Max
+CMT: "2416p616+63656w0","","16/09/16,20:51:08+24"$0D$0A34$0D$0A
+CMT: "2416p616+6342$0D$0A
+CMT: "2416p60
Это смс, похоже разбитая на три части, как такое обрабатывать даже не знаю.

Что выдает модуль в ответ на команды :

AT+CMGF?
AT+CSCS?


Такое ощущение, что ответ приходит в формате PDU или другой кодировке

Добавлено (16.09.2016, 18:40)
---------------------------------------------
Max писал(а):+CUSD: 0, "Balance:88,72r,Limit:0,01r ", 15$0D$0AЭтот ответ правильный!
Ну если так работает, то лучше его использовать.
Последний раз редактировалось Слимпер 16 сен 2016, 18:37, всего редактировалось 1 раз.
Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06 сен 2015, 13:12
Откуда: Тюмень-Баку
Имя: Максим

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

Сообщение Max »

Слимпер писал(а):Что выдает модуль в ответ на команды :AT+CMGF?
AT+CSCS?
AT+CMGF?

+CMGF: 1

OK

AT+CSCS?

+CSCS: "GSM"

OK

Это ответы.
Последний раз редактировалось Max 16 сен 2016, 19:29, всего редактировалось 1 раз.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

Max писал(а):AT+CMGF?+CMGF: 1

OK

AT+CSCS?

+CSCS: "GSM"

OK

Это ответы.
Странно, все правильно. По чему же так странно приходит?
Ну можно еще попробовать:
AT+CUSD=1,"*100#",15
igorgoga
Рядовой
Сообщения: 21
Зарегистрирован: 04 май 2016, 14:40

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

Сообщение igorgoga »

Парни помогите пож.
Имею sim-900/пытаюсь подключить к меге с помощью библиотеки sim 800 v1 (скачал c данного сайта)

раскоментировал #define SERIAL_M  Serial2  // для работы с COM порт 2
закоментировал //#include <SoftwareSerial.h>
//SoftwareSerial SERIAL_M( RX ,  TX );

настроил одинаковую скорость 9600 и в самом модуле и при помощи AT+IPR=9600
но модуль вообще никак не обменивается командами с ардуино,хотя при помощи uart переходника команды воспринимает.
обратил внимание что в блоке sim 800 v1 в разделе библиотеки отсутствует ссылка на SERIAL_M,может в этом дело.
или может нужно в библиотеках ардуино ide что то править связанное с мегой и hardware serial
а может этот блок  sim 800 v1 вообще к sim 900 не подходит..
два дня уже потратил,помогите советом кто сможет!!!!
Последний раз редактировалось igorgoga 20 окт 2016, 12:55, всего редактировалось 1 раз.
Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06 сен 2015, 13:12
Откуда: Тюмень-Баку
Имя: Максим

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

Сообщение Max »

igorgoga писал(а):Парни помогите пож.
Если, имеете ввиду блок взятый отсюда (с сайта FLprog), то там надо в настройках выставить нужный порт, скорость. Вообще внимательно прочитайте комментарии к блоку.
А АТ команды у 800 и 900 идентичны, насколько я помню.
igorgoga
Рядовой
Сообщения: 21
Зарегистрирован: 04 май 2016, 14:40

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

Сообщение igorgoga »

Max писал(а):Если, имеете ввиду блок взятый отсюда (с сайта FLprog), то там надо в настройках выставить нужный порт, скорость. Вообще внимательно прочитайте комментарии к блоку.А АТ команды у 800 и 900 идентичны, насколько я помню.
все выставлено,но не работает.....
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

igorgoga, попробуйте вариант из 309 сообщения.  Max, вроде с ним смог запустить.

Добавлено (20.10.2016, 15:11)
---------------------------------------------
Еще приложите кусок проекта с настройками, может что будет понятнее.
OJIEG555
Рядовой
Сообщения: 18
Зарегистрирован: 20 апр 2016, 06:10
Откуда: Красноярск

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

Сообщение OJIEG555 »

Добрый день! Есть ли возможность добавить в блок вывод данных базовой станции? Я был бы очень благодарен!
Последний раз редактировалось OJIEG555 27 окт 2016, 09:49, всего редактировалось 1 раз.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

OJIEG555 писал(а):Есть ли возможность добавить в блок вывод данных базовой станции? Я был бы очень благодарен!
Поподробнее что за данные вы имеете виду? Просто я не понял  что надо и по этому не могу сказать возможно ли.
OJIEG555
Рядовой
Сообщения: 18
Зарегистрирован: 20 апр 2016, 06:10
Откуда: Красноярск

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

Сообщение OJIEG555 »

У каждой базовой станции (вышки) есть свои данные.
MCC: Mobile Country Code (код страны). Россия — 250, Украина — 255, Беларусь — 257
MNC: Mobile Network Code (код сети). Билайн — 99, МТС — 01, Мегафон — 02, Теле2 — 20, Ростелеком — 39
LAC / TAC: Location Area Code (код местности).
CID / SAC / ECI: Cell ID (идентификатор соты).
на основе этих данных можно ориентировочно определить место расположения модуля связи (радиус вокруг вышки). актуально для "маячков"
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

OJIEG555 писал(а):У каждой базовой станции (вышки) есть свои данные.MCC: Mobile Country Code (код страны). Россия — 250, Украина — 255, Беларусь — 257MNC: Mobile Network Code (код сети). Билайн — 99, МТС — 01, Мегафон — 02, Теле2 — 20, Ростелеком — 39
Ну насчет этого похоже можно попробовать.
Команда получения  IMSI

AT+CIMI :
[spoiler=Спойлер]Данная команда используется для считывания и определения IMSI (Международный идентификатор абонента мобильной связи) SIM-карты.Перед считыванием IMSI необходимо ввести PIN (вот этот пункт меня смущает).
Примечание: значение IMSI (15 цифр), начинающееся с MCC (3 цифры) / MNC (2 цифры, 3 цифры для PCS 1900)[/spoiler]
OJIEG555 писал(а):LAC / TAC: Location Area Code (код местности).CID / SAC / ECI: Cell ID (идентификатор соты).на основе этих данных можно ориентировочно определить место расположения модуля связи (радиус вокруг вышки). актуально для "маячков"
Вот тут сложнее в sim800  вроде есть команда

AT+CENG

[spoiler=Спойлер][+CENG:
<cell>,"<bcch>,<rxl>,<rxq>,<mcc>,<mnc>,<bsic>,<cellid>,<rla>,
<txp>,<lac>,<TA>[<dbm>,<c1>,<c2>,<tch>,<ts>,<maio>,<hsn>,<
ub>,<rxq_full>,<ch_mod>]"<CR><LF>+CENG:
<cell>,"<bcch>,<rxl>,<bsic>[,<cellid>,]<mcc>,<mnc>,<lac>"…]
Parameters
<mode> 0 Switch off engineering mode
1 Switch on engineering mode
2 Switch on engineering mode, and activate the
URC report of network information
3 Switch on engineering mode, with limited network
information
4 Switch on engineering mode, with extern information
<Ncell> 0 Un-display neighbor cell ID
1 Display neighbor cell ID
If <mode> = 3, ignore this parameter.
<cell> 0 The serving cell
1-6 The index of the neighboring cell
<arfcn> Absolute radio frequency channel number, in decimal format
<bcch> ARFCN(Absolute radio frequency channel number) of
BCCH carrier, in decimal format
<rxl> Receive level, in decimal format
<rxq> Receive quality, in decimal format
<mcc> Mobile country code, in decimal format
<mnc> Mobile network code, in decimal format
<bsic> Base station identity code, in decimal format
<cellid> Cell id, in hexadecimal format
<lac> Location area code, in hexadecimal format
[/spoiler]

А вот для m590  не нашел, хотя у них команды могут быть не все описано.

Если кому интересно попробуйте будет ли выдавать результат просто AT-командами.

Добавлено (28.10.2016, 15:40)
---------------------------------------------
НовыйUser писал(а):Слимпер, Дим, а ведь и в модемчиках то есть режим энергосбережения... если я не ошибаюсь... отличное дополнение к имеющимся опциям...
Если честно я это не искал, если сильно надо и найдешь как это делается можно попробовать.
Но вообще то, я сейчас разрабатываю новый вариант блоков для NRF24. Так что быстро не обещаю.
Последний раз редактировалось Слимпер 28 окт 2016, 15:37, всего редактировалось 1 раз.
OJIEG555
Рядовой
Сообщения: 18
Зарегистрирован: 20 апр 2016, 06:10
Откуда: Красноярск

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

Сообщение OJIEG555 »


Вот тут сложнее в sim800  вроде есть команда

кажется понял. я еще осваиваю arduino, и тем более модуль связи, тут столько нюансов, поэтому могут прозвучать глупые вопросы. как эту команду, (AT+CENG), задать и получить ответ удаленно, с другого телефона (по смс например)?
и попутно еще такой вопрос:входящие смс хранятся на sim? если да то не переполнится ли память sim? и как их удалять дистанционно?
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

OJIEG555 писал(а):и попутно еще такой вопрос:входящие смс хранятся на sim? если да то не переполнится ли память sim? и как их удалять дистанционно?
Нет в том режиме, что сейчас работает блок, сообщения не сохраняются.
Получил, обработал и все.
OJIEG555 писал(а):кажется понял. я еще осваиваю arduino, и тем более модуль связи, тут столько нюансов, поэтому могут прозвучать глупые вопросы. как эту команду, (AT+CENG), задать и получить ответ удаленно, с другого телефона (по смс например)?
Ну так просто это не сделаешь.
Проверить работу AT команды,  можно только подключившись к GSM модулю напрямую и терминальной утилитой подавать команды и смотреть результат. В раздели пользовательские блоки, кроме блоков, я выкладывал ссылки на статьи, где было описано как работать с модулями.

А в веду того, что у меня есть только M590, сам я проверить работу этой команды не смогу.
OJIEG555
Рядовой
Сообщения: 18
Зарегистрирован: 20 апр 2016, 06:10
Откуда: Красноярск

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

Сообщение OJIEG555 »

понятно! все равно спасибо большое! в принципе мне пока и этих функций хватит что уже есть в блоке. а локацию если что можно и с gps модулем устроить
Последний раз редактировалось OJIEG555 28 окт 2016, 18:11, всего редактировалось 1 раз.
Мих@лыч
Рядовой
Сообщения: 15
Зарегистрирован: 08 апр 2016, 11:28
Откуда: Юг на 180 градусов

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

Сообщение Мих@лыч »

Ребята, вам за эти пользовательские блоки ну прям не респект, а респектище!
SIM800L уже в пути ко мне... Вопрос (для меня заочный): как вы Ардуину подключаете к GSM-модулю: интересует физическое подключение портов(физически наверное без разницы куда-хард или софт со стороны Ардуино). Я про согласование уровней. В этой статье Подключение GSM модуля SIM800L к Arduino прямо подключено. Автор блока пишет: "и еще желательно согласование логических уровней при подключении к COM потру. Модуль имеет уровень на 3.3В, а Arduino, обычно 5В."
 В этой статье  говорится, что у SIM800L  напряжение логических  2,8В и предлагают схему согласования из двух резисторов.
Как подключено и как работает на вашей практике?

П.С. есть GSM-модули SIM800L v2.0, которые вроде как согласованы под Ардуино. Но цена этого согласования как еще один модуль SIM800L, я уже не говорю о "бутербродных" версиях.
Последний раз редактировалось Мих@лыч 29 окт 2016, 16:47, всего редактировалось 1 раз.
zhulen820
Сержант
Сообщения: 194
Зарегистрирован: 29 авг 2016, 22:44
Откуда: Серпухов
Имя: Александр

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

Сообщение zhulen820 »

Очень хотелось бы увидеть блок для модуля на чипе А6. Приобрел такой модуль (по цене они не плохие, дешевле чем sim800 или 590-е в сборе, а исполнение мне очень понравилось). Ни один блок не подходит, хотя из терминала звоню и отправляю смс. Я думаю нужносделать минимальные изменения в коде, но сам не соображу.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

Мих@лыч писал(а):Ребята, вам за эти пользовательские блоки ну прям не респект, а респектище!SIM800L уже в пути ко мне... Вопрос (для меня заочный): как вы Ардуину подключаете к GSM-модулю: интересует физическое подключение портов(физически наверное без разницы куда-хард или софт со стороны Ардуино). Я про согласование уровней. В этой статье Подключение GSM модуля SIM800L к Arduino прямо подключено. Автор блока пишет: "и еще желательно согласование логических уровней при подключении к COM потру. Модуль имеет уровень на 3.3В, а Arduino, обычно 5В."  В этой статье  говорится, что у SIM800L  напряжение логических  2,8В и предлагают схему согласования из двух резисторов.Как подключено и как работает на вашей практике?
Я для этих целий использовал модули согласования уровней, но там по моему просто транзистор и пару резисторов.
А вообще способов множество ссылка1ссылка2

Добавлено (29.10.2016, 17:14)
---------------------------------------------
zhulen820 писал(а):Очень хотелось бы увидеть блок для модуля на чипе А6. Приобрел такой модуль (по цене они не плохие, дешевле чем sim800 или 590-е в сборе, а исполнение мне очень понравилось). Ни один блок не подходит, хотя из терминала звоню и отправляю смс. Я думаю нужносделать минимальные изменения в коде, но сам не соображу.
Ну у меня есть только M590, так что это будет довольно долго, как было с 800, когда все проверять придется вам самому.

Ну если очень надо, то для начала дайте ссылки на ту документацию что использовали для ручного запуска модуля.
zhulen820
Сержант
Сообщения: 194
Зарегистрирован: 29 авг 2016, 22:44
Откуда: Серпухов
Имя: Александр

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

Сообщение zhulen820 »

Команды по отправке смс, звонка такие же. Другие не тестировал, но если для дела надо пожалуйста. ссылка №1   все что нашел
Ответить

Вернуться в «Разработка пользовательских блоков»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость