Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: SIM900 CMUX
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Сотовая связь и ее приложения
Sagittarius
Здравствуйте.

Вопрос по CMUX. Включил режим, поднял 4 порта как в мануале. Теперь надо по IP соединится с сервером и открыть listen сокет. Надо ли для этого включать +CIPMUX или достаточно просто поднимать соединение с сервером +CIPSTART и сокет +CIPSERVER на разных виртуальных портах ? И попутный вопрос: если на одном виртуальном порту включить сокет слушать, по другому передавать данные на сервер и тут приходит SMS или RING - где о нем будет сообщение? можно ли назначить виртуальный порт для подобного остального обмена, чтоб соединения по IP были отдельно?

Спасибо.
DreamTwister
CIPMUX (IPшный мультиплексор) ника не связан с общемодемным, так что можно создавать соединения как с ним, так и без него.

Сообщения об СМС и звонках приходят сразу на все 4 канала мультиплексора. При этом соединение по IP будет соотнесено с тем каналом, с которым изначально была начата работа.
Alechek
Разбираюсь с мультиплексором.
Почему-то считал, что каждый канал живет своей жизнью, как написано в 3GPP TS 07.10
Цитата
Each channel will start life as an instance of GSM 07.07, and will allow the normal AT command procedures for both
GSM 07.07 and GSM 07.05. Any changes made to the AT register settings will be valid within the virtual channel only.


В том числе, по выдаче незапрашиваемых ответов. (видел такое в USB свистках, где по одному порту постоянно валится всякая инфа, по другому ходят АТ команды, по третьему данные)
Не проверял другие модемы, но SIMCOM видимо считает иначе: настройка выдачи незапрашиваемых ответов считается глобальной и действет на все каналы сразу!!! cranky.gif
Вот не пойму, зачем мне ВОСЕМЬ! раз получать сообщения о регистрации в сети? smile3046.gif
Alechek
Посомтрел еще.
У телита в CMUX User Guide
Цитата
 7.10 CMUX Basic Option used
 CMUX implementation support four full DLCI (Serial Port)
 Every CMUX instance has its own user profile storage in NVM
Independent setting of unsolicited message.
 In case of GPS product one serial port can be dedicated to NMEA output.
 Every CMUX instance has its own independent flow control.


У симкома в "AN_SIM900_Multiplexer User Manual_V1.3.pdf" в разделе 1.3 Restrictions не нашел упоминаний ни о настройках каналов, ни о их количестве!

Где можно узнать подробней? Может есть все-таки механизм настройки каждого канала индивидуально?
=F8=
Цитата(Alechek @ Aug 15 2013, 11:44) *
У симкома в "AN_SIM900_Multiplexer User Manual_V1.3.pdf" в разделе 1.3 Restrictions не нашел упоминаний ни о настройках каналов, ни о их количестве!

4 канала - посмотрите на картинку в разделе 1.2.

Цитата(Alechek @ Aug 15 2013, 11:44) *
Где можно узнать подробней? Может есть все-таки механизм настройки каждого канала индивидуально?

Каждый канал должен работать индивидуально(но не обязательно что-бы все каналы были симметричными), если это не так варианта два - или ждать новой прошивки где возможно это исправят или работать с тем, что есть.
PS Вы-бы описали ситуацию по-подробней - про какие именно сообщения идет речь. SIM900 в mux режиме не юзал, но с SIM300 проблем не было.
Waldelk
Цитата(Sagittarius @ Oct 19 2012, 15:08) *
Здравствуйте.

И попутный вопрос: если на одном виртуальном порту включить сокет слушать, по другому передавать данные на сервер и тут приходит SMS или RING - где о нем будет сообщение?


Все диагностические сообщения приходят на тот порт, через который идет обмен с терминальной сессией.
Alechek
Цитата(=F8= @ Aug 15 2013, 16:19) *
4 канала - посмотрите на картинку в разделе 1.2.

Картинки это одно. На деле - все по другому. Каналов у 900-го открывается 8 штук, на 9-м уже идет DM сообщение (не открывается).
Да и в теме можно найти высказывания CADiLO про 8 каналов



Цитата(=F8= @ Aug 15 2013, 16:19) *
Каждый канал должен работать индивидуально(но не обязательно что-бы все каналы были симметричными), если это не так варианта два - или ждать новой прошивки где возможно это исправят или работать с тем, что есть.
PS Вы-бы описали ситуацию по-подробней - про какие именно сообщения идет речь. SIM900 в mux режиме не юзал, но с SIM300 проблем не было.

Проблема, что в 1-м канале я говорю +CREG=1, затем во 2-м +CREG=0. B во всех открытых каналах никаких асинхроннных +CREG не получаю.
Если последовательность поменять, то получу асинхронный +СREG во всех (8-ми) каналах.

PS Эт хорошо, что проблем с SIM300 не было. Прошивка с мультиплексорным управлением планируется как обновление для всех текущих устройств. А они и на 300D/900D/900/900DS.
По этой же причине ждать исправления бессмысленно, надо адаптироваться к существующему.
CADiLO
В последних версиях прошивок - четыре. Согласно даташиту на АТ.

None Multiplexer Control DLCI=0

Channel Number - Type - DLCI
1 07.07 and 07.05 1
2 07.07 and 07.05 2
3 07.07 and 07.05 3
4 07.07 and 07.05 4


Касаемо URC сразу не отвечу - спрошу китайцев, так как сам еще с MUX подробно не разбирался.
=F8=
Цитата(Alechek @ Aug 15 2013, 15:14) *
Проблема, что в 1-м канале я говорю +CREG=1, затем во 2-м +CREG=0. B во всех открытых каналах никаких асинхроннных +CREG не получаю.
Если последовательность поменять, то получу асинхронный +СREG во всех (8-ми) каналах.

А вот про GREG как-раз ничего не скажу. Использовал его только в режиме CREG=0.
Alechek
А не секрет, с какой прошивкой в 300-м работало?
у меня на столе 1008B14SIM300D32_SST34HF3

шлет, собака, одни F9 F9 F9 F9 F9 F9 F9 F9 F9 F9 F9 F9
вместо
F9 03 73 00 00 A4 F9
F9 07 73 00 00 D7 F9
F9 0B 73 00 00 42 F9
F9 0F 73 00 00 31 F9
=F8=
SIMCOM_SIM300D
Revision:1008B16SIM300D32_SST34HF3284

Сорри перепроверил - тоже, что что и у вас F9 F9. Раньше тестил на каком-то IRZ модеме на SIM300, завтра попробую его найти.
CADiLO
Обратите внимание - SIM300 и SIM900 отличаются в реализации.

SIM300 migrate to SIM900
Parameter scope is different. ”F9 F9 F9 F9” can not be used for synchronization.
For SIM900 module, illegal MUX frame will be discarded automatically.

Из апнотеса для SIM300

The continuous bytes F9 F9 F9 F9 has the following effects:
1) Indicate MS multiplexer initialization is OK and waiting for further operations (Establish DLC)
2) The byte continuously transmitted by MS after receiving PSC message.
2) TE or MS uses to wake up the other one.
3) The synchronization bytes between TE and MS when synchronization lost.
Alechek
Да, уже заметил, найдя "SIMCOM Multiplexer User's Manual 1.4" на каком-то baidu для онлайн просмотра.
Эдуард, не могли бы вы поделится самой последней редакцией этого документа?

Кстати, заметил, что SIM900 допускает только CMUX=0 и различный размер кадра. А SIM300 как CMUX=0, так и CMUX=1 (но с ним вообще ничего не отвечает), но размер кадра всегда 127 и скорость 115200.
CADiLO
У меня последняя весия 1.3, а потом с уходом SIM300x новее не понадобилось.
Так что думаю что для SIM300 последний как раз и есть 1.4
Они должны были доделать CIPMUX, но в 1008 прошивках был только тестовый вариант , а в 1604 CIPMUX появился в последней.


SIM300_ATC_V2.03.pdf

<mode> multiplexer transparency mechanism

0 Basic option
1 Advanced option (GSM 07.10 multiplexer) - ни в SIM300, ни в SIM900 вариант 07.10 не реализован.

поэтому смотрим внизу сноску

1. Advanced option with Error Recovery options is not supported.

Alechek
Запустил я MUX на SIM300D. Он, оказывается, еще и поддерживает EA=1 только (то есть, однобайтовую длину), при посылке с EA=0 просиходит
Цитата
The continuous bytes F9 F9 F9 F9 has the following effects:
3) The synchronization bytes between TE and MS when synchronization lost.


URC на регистрацию в сети, как я понял, лучше не использовать.... с ними вообще непонятки.
у SIM300D
подаю +CREG=2;+CGREG=2;+CUSD=1;+CSSN=1;+COPS=0,2
получаю +CGREG: 1,"924B","902F" (так же по всем каналам) только! А где же URC +CREG... ???





CADiLO
попробуйте давать команды после OK предыдущей
так как у вас можно делать только с настроечными командами модуля которые не лезут к оператору
есть комбинации когда при работе с оператором последующая команда данная до ОК отменяет предыдущую


=F8=
Заработал CMUX с sim300. Откатился на на одну из первых версий - работает. Оказалось у меня там была ошибка - после CMUX вычитывал все из порта в течении~2сек. Потом это исправил. Кстати нигде не находил ничего по поводу этих F9 F9 F9 F9 F9, ни Cintrion, ни Telit, ни Sagmem такого не выдают. В описании протокола такого не нашел. Симкомовское ноухау?
Alechek
Так в том то и дело, что эти команды все настроечные, и к оператору никак не лезут!

Эх, загадочна душа китайского чуда (SIM300D):

Без мультиплексора:
Код
AT+CREG=2;+CGREG=0;+CUSD=1;+CSSN=1;+COPS=0,2

OK
AT+CREG?

+CREG: 2,2

OK


Через мультиплексор:
Код
ùïAT0ùùï+CREG=2Ýùùï
Ôùùï

OK
_ùùïAT0ùùï
+CREG?>ùùï
Ôùùï
+CREG: 0,2
Cùùï

OK
_ùù


Ну почему 0, когда я сказал 2 и модем подтвердил запрос? smile3046.gif

Мда, видимо, URC - просто бонус, который может быть, а может и не быть. Надежды на них нет. Грустно.
CADiLO
+CREG: 0,2

ноль - не зарегистрирован в сети
двойка - ваше AT+CREG=2

все верно....
Alechek
Ну право, хоть и пятница cheers.gif , но зачем путать людей?

Первая цифра - параметр.


3GPP TS 07.07 version 7.8.0 Release 1998
Цитата
7.2 Network registration +CREG
Table 31: +CREG parameter command syntax
Command Possible response(s)
+CREG=[<n>]
+CREG? +CREG: <n>,<stat>[,<lac>,<ci>]
+CME ERROR: <err>

<n>:
0 disable network registration unsolicited result code
1 enable network registration unsolicited result code +CREG: <stat>
2 enable network registration and location information unsolicited result code +CREG: <stat>[,<lac>,<ci>]



Более того после установки AT+CREG=2;+CREG=2 в мультиплексорном канале:


+CREG: 2,2
+CGREG: 0,0

OK

<ничего не делали, подождали 3 секунды>

Call Ready

+CREG: 0,2
+CGREG: 0,0
OK
CADiLO
Не просто пятница, а +34....
Все... ум закипел... точно пора cheers.gif
Alechek
Дошел до момента с sim900ds.
Возник вопрос: как будет отрабатываться +CDSDS - глобально или для каждого канала?
А то получится, что одна задача меняет активную симку, а другая об этом и не подозревает....
Waldelk
Цитата(Alechek @ Aug 28 2013, 16:07) *
Дошел до момента с sim900ds.
Возник вопрос: как будет отрабатываться +CDSDS - глобально или для каждого канала?
А то получится, что одна задача меняет активную симку, а другая об этом и не подозревает....


в модуле стоит коммутатор, который переключает SIM-карты .
в случае активности на передачу данных или голосовой вызов, вторая отключается
CADiLO
>>>в модуле стоит коммутатор, который переключает SIM-карты .

Ответ ошибочен. Коммутатор стоит у Квиктела в M95.
В SIM900DS обе карты ОДНОВРЕМЕННО активны на прием (что при коммутаторе невозможно) и только при передаче активна одна, НО! вторая не теряет регистрацию.


Касаемо +CDSDS - все уже написано тут - sim900-ds_application_note_v1.00.pdf
Alechek
Дак как бы читал.. Там про MUX ни слова...
Неопределено, "Default SIM" это для всех каналов или для текущего?
CADiLO
Я уточню у китайцев.
По MUX для DS еще апнот не готов. Так что разве что только попробовать.
Alechek
Есть ли нормальный апнот по использованию CMUX и SLEEP MODE (PSC сообщения)?


Цитата(SIM900_Multiplexer User Manual_Application Note_V1.3)
Wake up
Set DTR low


Цитата(应用_SIM900_多路复用使用手册_V1.6)
唤醒
数据流向 序号 步骤
TE<——>MS
Hex 备注
TE 发送唤醒标志 ——> F9 F9 F9 F9 注 1 1
MS 回送 <—— F9 F9 F9 F9
2 MS 被唤醒,数据收发恢复正


注 1
唤醒可以使用一般的帧或 4 个 Flag,这里以 4 个 Flag 为例

注:a. 以上睡眠指令是单次有效指令
b. 关于标志 F9 的作用请参考 3.1 节中的步骤 1 注 1

Wake
Data Direction No Steps
TE <-> MS
Hex Comment
TE sends wake-up flag -> F9 F9 F9 F9 Note 11
MS Loopback <- F9 F9 F9 F9
2 MS wakes up, restore data transceiver is
Often

Note 1
Wake use regular frames or four Flag, Flag this example with 4

Notes: a. Above SLEEP instruction is valid for a single command
b. concerning the role of flag F9 See 3.1 Step 1 Note 1



CADiLO
Первый документ для SIM900 и SIM900R]
Второй для SIM900A

Модули разные по фирмваре.

Других документов нет.
Alechek
То есть выяснять опять все опытным путем? krapula.gif МТ тоже молчат..

Ибо в документе 1.3 есть противоречие со стандартом GSM 07.10
Цитата(5.4.7 Power Control and Wake-up Mechanisms)
Either station may initiate a wake-up from the reduced power state by the transmission of the wake-up signal which
consists of continuous flag characters. When the other station receives the flag characters it will wake-up (if necessary)
and start sending flag characters. When the first station receives these flag characters it will stop sending flags and start
transmitting the first frame. When the second station detects a valid frame it stops sending flags. The stations unfreeze
their timers and continue operation as before.
If no response (continuous flags) is received to the wake-up procedure within time T3, an alarm should be raised to the
higher layers and transmission of flags stops.


А вот 1.6 более близок.

Не верю, что китайская ветка фирмваре более правильная, чем европейская. cranky.gif
Relax
Цитата(Alechek @ Nov 6 2013, 13:34) *
То есть выяснять опять все опытным путем? krapula.gif МТ тоже молчат..

Ибо в документе 1.3 есть противоречие со стандартом GSM 07.10


А вот 1.6 более близок.

Не верю, что китайская ветка фирмваре более правильная, чем европейская. cranky.gif


Alechek, пришлите пожалуйста мне kirill(собака)mt-system.ru

1. АТ-лог.
2. Пометки в логе, что ожидалось.
3. Пометки в логе, что получилось (что неправильно).

Alechek
Ээм...
Для MUX кадров + DTR как-то странно говорить о AT логе...
Да и не экспериментировал я еще, пока что подготовливаюсь к убиению модема командой +CDSDS.
Пока нашел, что после поднятия DTR (at+cclk=1) в режиме мультиплексора обмен данными прекращается и без кадра PSC.

Да и не собирался я плясать с бубном экспериментировать. Хотелось просто разобраться в вопросе и сделать КАК НАДО
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.