Подключение GSM модема на модуле WM5509
 

Заимел я как-то мобильный USB модем. Но толи модем оказался так себе, толи USB контроллер на материнской плате компьютера был невысокого качества. Короче говоря, модем постоянно отваливался от системы, а работа в сети превратилась в настоящую пытку. Так как в это время я работал с модулями китайской фирмы AsiaTelco, то и приспособил одну платку к своему копьютеру.
Модуль WM5509D располагается на оценочной плате, на которой помимо него распаяны 2 коннектора DB-9, преобразователь уровней RS232 на чипе SP3238 и усилитель для внешнего спикера. Неприятным сюрпризом оказалось то, что на плате осутствуют стабилизаторы напряжения и одна из плат благополучно скончалась при превышении напряжения питания. Оценочная плата может работать как полноценный внешний стандартный модем на COM-порт, что и было решено использовать. Как выяснилось, программа модуля содержит серьезную ошибку, его невозможно вывести из спящего режима сигналом DTR. В результате длительных переговоров со службой техподдержки я заполучил схему и рекомендации по решению проблемы. Их можно скачать в конце страницы. Из сравнения схемы с печатной платой следует, что сигнал DTR заведен на отладочный разъем, а не на порт AT-команд. Это довольно просто лечится добавлением перемычки между соответствующими контактами разъема. Кроме того, необходимо еще допаять на разъемы несколько перемычек если они не установлены(как это сделать описано в документах в конце страницы). Но на этом танцы с бубном не заканчиваются. Вход модуля DTR(маркировка на плате DTR2) нужно припаять к земле и перерезать дорожку идущую к коллектору транзистора  Q1. Далее надо коллектор транзистора подключить ко входу модуля HOOK_EINT_GPIO42(маркировка на плате JP1). Это вход внешнего прерывания, которым можно разбудить модуль. Теперь подключаю к терминалу, дергаю DTR, даю АТ-команды и модуль отвечает.
В системе вручную устанавливается  как обычный внешний 33600bps модем, типичная строка инициализации: at+cgdcont=1,"IP","internet","",0,0. Но работает на 115200 бод. Не так уж много по современным меркам, но зато теперь коннект стабильнй:)

    
Рисунки слева-направо: 1,2 - доработанный модем в импровизированном "корпусе", справа видно CDMA модем WM6681 той же фирмы; 3 - модем на WM5509 и USB модем, который не хотел работать.

/**** Далее заметки по использованию и АТ-команд в т.ч. Они не нужны при использовании интернета, но полезны для встраиваемых систем, где модулем управляет микроконтроллер.****/
Вход HOOK_EINT_GPIO42 по иному влияет на модуль в отличие от классического DTR. Модуль выводится из сна по фронту импульса этого сигнала. Затем запускается таймаут секунд 10-15. Если нет нового фронта, то модуль валится в сон даже если идет передача АТ-команды. Поэтому либо его надо часто дергать, либо по выходу из сна/вкл. питания запретить сон:  AT+ESLP=0.
Документация по АТ-командам очень скудная, особенно по сравнению с описанием на французские модули WAVECOM. Про стандартные примеры применения(Application Notes) и говорить не приходится, их просто нет!
Учитывая малую стоимость, эти модули могут найти применение в проектах низшего ценового диапазона.
 
Скачать:

1.Схема оценочной платы.

2.Описание по устранению неисправностей.
 

На главную

Hosted by uCoz