Не удается получить ответ от GSM-модема CT63 из C # / ASP.NET - PullRequest
0 голосов
/ 09 ноября 2011

В настоящее время я пользуюсь мобильными телефонами Sony Ericsson для построения SMS-сервиса на C #.Связь с телефонами SE осуществляется через драйвер USB / Com с использованием AT-команд.

С телефонами SE все работает нормально, но они нестабильны, и поэтому мы приобрели терминалы CT63 у m2mtec.de в качестве замены..

Терминалы CT63 имеют те же AT-команды, что и телефоны SE, но у нас возникают проблемы с начальным подключением к терминалам CT63.

Если мы запускаем наш сервис с CT63,порт, кажется, открывается нормально, но при отправке в виде простого «AT \ n» для проверки соединения мы не получаем ответ от терминала.

Если мы перейдем к панели управления Windows 7, выберите «Телефон и модем».", Выберите свойства модема и выполните" Запрос модема "на вкладке" Диагностика "ответа модема, как следует.

Функция модема запроса отправляет команду" ATQ0V1E0 ", и ответ" ОК ".

После выполнения «модема запроса» мы можем связываться с терминалом через нашу службу C #, и ответ модема на тест «AT \ n» - «ОК».После отключения модема повторное подключение ответ не получен.

Мы убедились, что настройки COM-порта в службе C # такие же, как и в тесте "Query modem".

Более того, мы имеемпопытался отправить "ATQ0V1E0" из нашего сервиса C #.Проблема та же.Без теста «Запрос модема» мы не получим ответ, и после того, как мы получим «ОК», как и ожидалось.

Почему-то кажется, что отсутствует какая-то инициализация модема, но вдокументация.

Вот журнал теста "Query modem":

09-16-2011 15:16:16.451 - File: C:\Windows\system32\tapisrv.dll, Version 6.1.7601   
09-16-2011 15:16:16.451 - File: C:\Windows\system32\unimdm.tsp, Version 6.1.7601   
09-16-2011 15:16:16.451 - File: C:\Windows\system32\unimdmat.dll, Version 6.1.7601   
09-16-2011 15:16:16.451 - File: C:\Windows\system32\uniplat.dll, Version 6.1.7600   
09-16-2011 15:16:16.452 - File: C:\Windows\system32\drivers\modem.sys, Version 6.1.7600   
09-16-2011 15:16:16.452 - File: C:\Windows\system32\modemui.dll, Version 6.1.7600   
09-16-2011 15:16:16.452 - File: C:\Windows\system32\mdminst.dll, Version 6.1.7600   
09-16-2011 15:16:16.452 - Modem type: Cinterion USB Modem
09-16-2011 15:16:16.452 - Modem inf path: oem28.inf
09-16-2011 15:16:16.452 - Modem inf section: Modem1.NTamd64.6.0
09-16-2011 15:16:16.452 - Matching hardware ID: usb\vid_1e2d&pid_004f
09-16-2011 15:16:16.452 - Opening the modem device failed with error 00000020
ATQ0V1E0 - OK
AT+GMM - EGS3
AT+FCLASS=? - (0,1)
AT#CLS=? - COMMAND NOT SUPPORTED
AT+GCI? - COMMAND NOT SUPPORTED
AT+GCI=? - COMMAND NOT SUPPORTED
ATI1 - Cinterion
       EGS3
       REVISION 01.000
       A-REVISION 01.001.01
ATI2 - OK
ATI3 - OK
ATI4 - OK
ATI5 - OK
ATI6 - OK
ATI7 - OK

Есть идеи, в чем может быть проблема?

Спасибо!

/ Thomas

1 Ответ

0 голосов
/ 16 ноября 2011

После нескольких часов тестирования и различных настроек я изменил используемую нами библиотеку SMS.Библиотека использовала kernal32.dll, но теперь мы изменили использование сборки .NET в классе SerialPort.

При использовании класса SerialPort нам удалось установить связь с модемом в нашей среде разработки (Windows 7, 64-разрядная версия).).

К сожалению, мы не можем подключиться к модему в производственной среде, работающей под управлением 64-разрядной ОС Windows Server 2008, но это еще одна проблема.Пожалуйста, смотрите новый вопрос с заголовком «Проблема подключения SerialPort в Windows 2008 при подключении к модему GSM (DT-63)»

...