AI Thinker A6 - компьютерный модем (Делимся опытом применения китайской чудо-техники)
AI Thinker A6 - компьютерный модем
Делимся опытом применения китайской чудо-техники
Недавно приобрёл на Али вот такую штуку:
Эта штука позиционируется как самый бюджетный GPRS модем на сегодняшний день. Общается с внешним миром при помощи UART. Помимо стандартного обмена данными с помощью PPP-протокола имеет некую встроенную поддержку HTTP и FTP, а также поддерживает работу с SMS и голосовую связь через аналоговые входы и выходы. Пользуется популярностью у ардуинщиков и прочих самоделкиных. Мне, однако, данный модуль больше интересен в качестве дешёвой альтернативы дорогим "промышленным" GPRS-коробкам с COM-портом на борту. В частности, было интересно вывести в Интернеты какой-нибудь старый комп без USB.
Казалось бы, чего проще? У данной платы преобразователь уровней RS-232 уже распаян. Подключаем разъём и радуемся. Да не тут-то было...
Открываем терминал, в его настройках ставим скорость 115200, без управления потоком разумеется (ведь у нас на плате выведены только Rx и Tx), да по совету ардуинщиков ставим "добавлять символ LF после CR. Пробуем с ним побеседовать - отлично, всё работает, вроде даже по даташиту. Попробуем теперь в Windows установить какой-нибудь "стандартный модем ... бод" и понимаем, что...коннект на отрез отказывается устанавливаться. Даже если отключить пресловутое "управление потоком". При просмотре логов видно, как винда пытается скормить модулю команды, которые даже по даташиту он не поддерживает, и на этом обламывается.
Вспомнилось, что многим из тех "промышленных коробок" для работы всё равно некие драйвера требовались, Стал копать в этом направлении. во многом помогло то, что Гугль вынес на описание вот такой поделки на основе модуля SIM900 (это модуль более старой разработки, хоть и со сходными с A6 характеристиками), и ссылка на драйвера для модификации с "упрощённым интерфейсом".
В итоге стало понятно, что функция всех этих драйверов для COM-овских модемов, как правило, сводится к ссылке на стандартный для Windows Unimodem.vxd, а также к перечислению особенностей командного языка конкретного экземпляра модема и настроек COM-порта под него. Удалось даже найти более-менее внятное описание формата inf-файла для модемов.
Итак, чего же на данный момент удалось сделать
INF-файл для Windows 95, 98: ссылка на Google-диск.
INF-файл для Windows XP 32-bit: ссылка на Google-диск
INF-файл для Windows 7 64-bit: ссылка на Google-диск
По поводу чего ещё остались вопросы:
Так и не вышло сделать полную инициализацию. Поэтому чтобы модем заработал, прежде чем активировать модемное соединение, приходится вначале открывать терминалку, вбивать там AT+CPIN=пинкод (в принципе, от этого можно избавиться, если отключить в симке блокировку по пин-коду), а потом AT+CGATT=1 Последнее вроде бы нужно, чтобы работал GPRS, поскольку согласно даташиту, модуль не активирует по умолчанию GPRS-соединение с оператором. Хотя чуть позже пробовал открыть соединение без ввода данной команды, и оно всё равно работало. Странно...
А теперь внимание - вопрос: никому здесь не доводилось настраивать соединение на всяких "нестандартных" модемах? Быть может, я "изобретаю велосипеды", а проблема решается гораздо проще? Скажем, какой-нибудь программой-конфигуратором или вроде того.
PS:
Страница производителя, посвящённая GPRS-модулям, в т.ч. A6: http://wiki.ai-thinker.com/gprs Всё на кетайском, да. Но гугль-переводчик поможет.
Описание команд модуля: http://wiki.ai-thinker.com/_media/gprs/ ... _v1.03.pdf На английском
Описание формата inf-файлов для модема https://docs.microsoft.com/en-us/previo ... 3dvs.85%29
Недавно приобрёл на Али вот такую штуку:
Эта штука позиционируется как самый бюджетный GPRS модем на сегодняшний день. Общается с внешним миром при помощи UART. Помимо стандартного обмена данными с помощью PPP-протокола имеет некую встроенную поддержку HTTP и FTP, а также поддерживает работу с SMS и голосовую связь через аналоговые входы и выходы. Пользуется популярностью у ардуинщиков и прочих самоделкиных. Мне, однако, данный модуль больше интересен в качестве дешёвой альтернативы дорогим "промышленным" GPRS-коробкам с COM-портом на борту. В частности, было интересно вывести в Интернеты какой-нибудь старый комп без USB.
Казалось бы, чего проще? У данной платы преобразователь уровней RS-232 уже распаян. Подключаем разъём и радуемся. Да не тут-то было...
Открываем терминал, в его настройках ставим скорость 115200, без управления потоком разумеется (ведь у нас на плате выведены только Rx и Tx), да по совету ардуинщиков ставим "добавлять символ LF после CR. Пробуем с ним побеседовать - отлично, всё работает, вроде даже по даташиту. Попробуем теперь в Windows установить какой-нибудь "стандартный модем ... бод" и понимаем, что...коннект на отрез отказывается устанавливаться. Даже если отключить пресловутое "управление потоком". При просмотре логов видно, как винда пытается скормить модулю команды, которые даже по даташиту он не поддерживает, и на этом обламывается.
Вспомнилось, что многим из тех "промышленных коробок" для работы всё равно некие драйвера требовались, Стал копать в этом направлении. во многом помогло то, что Гугль вынес на описание вот такой поделки на основе модуля SIM900 (это модуль более старой разработки, хоть и со сходными с A6 характеристиками), и ссылка на драйвера для модификации с "упрощённым интерфейсом".
В итоге стало понятно, что функция всех этих драйверов для COM-овских модемов, как правило, сводится к ссылке на стандартный для Windows Unimodem.vxd, а также к перечислению особенностей командного языка конкретного экземпляра модема и настроек COM-порта под него. Удалось даже найти более-менее внятное описание формата inf-файла для модемов.
Итак, чего же на данный момент удалось сделать
INF-файл для Windows 95, 98: ссылка на Google-диск.
INF-файл для Windows XP 32-bit: ссылка на Google-диск
INF-файл для Windows 7 64-bit: ссылка на Google-диск
По поводу чего ещё остались вопросы:
Так и не вышло сделать полную инициализацию. Поэтому чтобы модем заработал, прежде чем активировать модемное соединение, приходится вначале открывать терминалку, вбивать там AT+CPIN=пинкод (в принципе, от этого можно избавиться, если отключить в симке блокировку по пин-коду), а потом AT+CGATT=1 Последнее вроде бы нужно, чтобы работал GPRS, поскольку согласно даташиту, модуль не активирует по умолчанию GPRS-соединение с оператором. Хотя чуть позже пробовал открыть соединение без ввода данной команды, и оно всё равно работало. Странно...
А теперь внимание - вопрос: никому здесь не доводилось настраивать соединение на всяких "нестандартных" модемах? Быть может, я "изобретаю велосипеды", а проблема решается гораздо проще? Скажем, какой-нибудь программой-конфигуратором или вроде того.
PS:
Страница производителя, посвящённая GPRS-модулям, в т.ч. A6: http://wiki.ai-thinker.com/gprs Всё на кетайском, да. Но гугль-переводчик поможет.
Описание команд модуля: http://wiki.ai-thinker.com/_media/gprs/ ... _v1.03.pdf На английском
Описание формата inf-файлов для модема https://docs.microsoft.com/en-us/previo ... 3dvs.85%29
Хорошо иметь DOOM-ик в деревне!
Первые впечатления о работе с модулем:
Достоинства: конечно же, цена. Подобная плата продаётся у китайцев за 300 в небольшим р. Можно купить ещё дешевле - плату лишь с модулем и антенной, или даже модуль без ничего. При этом, однако, весь обвес придётся городить самостоятельно, в т.ч. такой довольно критичный для любого GSM-модуля узел, как источник питания. Ещё бы добавил про относительно небольшие размеры платы, и что с антенной как на моём экземпляре сигнал берётся устойчиво.
Недостатки: самый главный - отмеченные в начале танцы с бубном чтобы заставить модуль работать обычным модемом. Ещё было замечено, что при загрузке тяжёлого современного сайта, с ajax-ами и HTML-5, модем может зависнуть. Ошибки в реализации PPP, или просто мощности пятивольтового "USB-зарядника" не хватает когда льётся обильный траффик? До конца пока не понял. И скорость - лишь простой GPRS, как в "старые добрые времена". Ни каких там 3/4G, ни даже EDGE модуль не поддерживает.
В целом, модуль мне напоминает другой продукт данного производителя - знаменитые Wi-Fi модули на основе ESP8266. Те тоже стоят сущие копейки и имеют ряд своих косяков и особенностей, но если их учитывать, получаем вполне работоспособное изделие.
Так может ли данное изделие претендовать на роль компьютерного модема в современном мире? И да, и нет. Подружив наконец модуль с операционной системой, посидеть в аське, о которой не все уже помнят, получить электронную почту - на это возможностей "простого" GPRS хватает. Если набраться терпения, можно полистать какой-нибудь "олдскульный" ресурс, вроде нашего Фантома, сайта Карпача и пр. Наблюдая, как под мерцание светодиода активности на плате, одна за другой ме-е-едленно подгружаются картинки. Даже Chrome или современный Firefox с парой плагинов при одном только своём запуске одним махом сжирают трафик метрами!
Достоинства: конечно же, цена. Подобная плата продаётся у китайцев за 300 в небольшим р. Можно купить ещё дешевле - плату лишь с модулем и антенной, или даже модуль без ничего. При этом, однако, весь обвес придётся городить самостоятельно, в т.ч. такой довольно критичный для любого GSM-модуля узел, как источник питания. Ещё бы добавил про относительно небольшие размеры платы, и что с антенной как на моём экземпляре сигнал берётся устойчиво.
Недостатки: самый главный - отмеченные в начале танцы с бубном чтобы заставить модуль работать обычным модемом. Ещё было замечено, что при загрузке тяжёлого современного сайта, с ajax-ами и HTML-5, модем может зависнуть. Ошибки в реализации PPP, или просто мощности пятивольтового "USB-зарядника" не хватает когда льётся обильный траффик? До конца пока не понял. И скорость - лишь простой GPRS, как в "старые добрые времена". Ни каких там 3/4G, ни даже EDGE модуль не поддерживает.
В целом, модуль мне напоминает другой продукт данного производителя - знаменитые Wi-Fi модули на основе ESP8266. Те тоже стоят сущие копейки и имеют ряд своих косяков и особенностей, но если их учитывать, получаем вполне работоспособное изделие.
Так может ли данное изделие претендовать на роль компьютерного модема в современном мире? И да, и нет. Подружив наконец модуль с операционной системой, посидеть в аське, о которой не все уже помнят, получить электронную почту - на это возможностей "простого" GPRS хватает. Если набраться терпения, можно полистать какой-нибудь "олдскульный" ресурс, вроде нашего Фантома, сайта Карпача и пр. Наблюдая, как под мерцание светодиода активности на плате, одна за другой ме-е-едленно подгружаются картинки. Даже Chrome или современный Firefox с парой плагинов при одном только своём запуске одним махом сжирают трафик метрами!
Хорошо иметь DOOM-ик в деревне!
-
- Advanced Member
- Сообщения: 1110
- Зарегистрирован: 17.02.2008,16:07
- Откуда: Ставрополь
- Контактная информация:
-
Вклад в сообщество
Занимаюсь аналогичными извращениями с модемом Телеофис RX101, только у него выведенный интерфейс USB (RS232 3.3V спрятан внутри железной коробочки). Касаемо обрывов и незагрузки сайтов/картинок и пр. - это уже проблема современных HTTP-серверов и их сраных одменов, которые рвут связь, если клиент, по их нескромному мнению, слишком медленный. Ну и современные опсосы уже закрывают поддержку 2G на своих сетях, так что такие модемы потихоньку просто перестают работать не по своему желанию...
...а поработав в своё время у опсоса понял, что ну его нафиг, этот жсм-интернет, провод рулит.
...а поработав в своё время у опсоса понял, что ну его нафиг, этот жсм-интернет, провод рулит.
http://rw6hrm.qrz.ru - Мои поделки
- F0lken
- Advanced Member
- Сообщения: 1259
- Зарегистрирован: 07.11.2006,10:48
- Контактная информация:
-
Конкурсы
Вклад в сообщество
Имел опыт сборки и запуска вот такого - https://ru.aliexpress.com/item/DIY-KIT- ... 83255.html
Вообще работает, только вот UART->RS232 нет, но у меня разных преобразователей мешок, так что это не было проблемой.
Сразу скажу, что для серьезной эксплуатации _нужен_ хотя бы 3G (про EDGDE я молчу, он в РФ никогда нормально не работал, в отличии от той же Польши).
Вообще работает, только вот UART->RS232 нет, но у меня разных преобразователей мешок, так что это не было проблемой.
Сразу скажу, что для серьезной эксплуатации _нужен_ хотя бы 3G (про EDGDE я молчу, он в РФ никогда нормально не работал, в отличии от той же Польши).
Astrolux есть, разумеется. Но вот цены на то, что есть, пока что совсем не радуют.
Хорошо иметь DOOM-ик в деревне!
- F0lken
- Advanced Member
- Сообщения: 1259
- Зарегистрирован: 07.11.2006,10:48
- Контактная информация:
-
Конкурсы
Вклад в сообщество
Ну как сказать. Если у вас есть совместимый usb uart, вроде оно отзывается и работает.EJSanYo писал(а):И как? Удалось с виндами подружить?
Я гонял через встроенную в arduino как-бы терминальную программу, ответы получал, потом отдал всё человеку, который просил собрать. Поищите на mysku.ru прям по этому слову neoway, там подробно пишут как и что.
Для меня смысла нет, ибо готовый usb 3g модем noname на ebay рублей за 800 можно купить и он будет работать "искаропки", правда в linux. В винде свои болячки - типа подписи драйвера в 10ке или отсутствия оного вообще .
По поводу цен на 3g, истинная правда и затея тоже теряет смысл
- ATauenis
- Advanced Member
- Сообщения: 5531
- Зарегистрирован: 30.04.2015,21:30
- Откуда: Москва
- Контактная информация:
-
Вклад в сообщество
Кстати, про подписи. Сейчас есть куча сервисов для создания SSL сертификатов за небольшие деньги (вроде, даже видел за бесплатно). Есть ли что-то такое для драйверов Windows и AuthentiCode для EXE файлов? Или там всё серьёзно, надо отправлять в WHQL?F0lken писал(а):В винде свои болячки - типа подписи драйвера в 10ке или отсутствия оного вообще .
- F0lken
- Advanced Member
- Сообщения: 1259
- Зарегистрирован: 07.11.2006,10:48
- Контактная информация:
-
Конкурсы
Вклад в сообщество
Кхм... Мягко говоря, это не одно и то же.ATauenis писал(а):Или там всё серьёзно, надо отправлять в WHQL?
Ответ на вопрос -- "да, там все серьезно, надо отправлять и даже платить".
На самом деле, по _большому_ счёту это правильная мера, ибо Microsoft пытается обуздать зоопарк устройств, которые наплодили и не заниматься поддержкой чего-то, о чём они не знают.
Экспериментаторы вроде нас с вами никому не интересны .
Поковыряв inf-файл от BitCord адаптировал его под мой модуль. Возможно, он бы пошёл и под Win2000, не пробовал. Если кому нужно, ссылка в шапке темы. Файл, который у меня нормально идёт под Win9x, под XP вроде бы как тоже поставился, но при этом коннект всё равно не устанавливался. По логам видно, что винда опять пытается скормить модулю какую-то ему не известную команду, но какую - что странно, в логи не попадает!
Ещё попутно обнаружил занятный баг в XP: если для только что установленного модема создать новое подключение, то в настройках всё равно будет включено "аппаратное управление потоком". (то бишь, пользовать доп. сигналы COM-порта RTS, CTS и пр.) Даже если в настройках модема оно отключено...даже больше, в разделе [MfgAddReg] я уже выставил дефолтные настройки, которые его отключают!
Ладно бы этим дело ограничилось, галку снять не проблема. Снимаем, открываем соединение, и...модем не отвечает! А в логах видно, что винда по прежнему упорно пытается пользовать управление потоком, будто и не существует никакой настройки. Всё же, после некоторой пляски с бубном в виде "изменить настройки, нажать OK, вернуть настройки" в свойствах соединения и свойствах модема, после нескольких попыток опросить модем во вкладке "диагностика", до винды ВНЕЗАПНО наконец доходит, что управление потоком вообще-то отключено. И после этого всё работает уже как обычно, все последующие соединения. Неужели "индусы" дяди Билли настолько не ожидали, что кто-то в далёкой России спустя много лет попытается прикрутить к их операционке урезанный китайский модем? Чудеса, да и только.
Ещё попутно обнаружил занятный баг в XP: если для только что установленного модема создать новое подключение, то в настройках всё равно будет включено "аппаратное управление потоком". (то бишь, пользовать доп. сигналы COM-порта RTS, CTS и пр.) Даже если в настройках модема оно отключено...даже больше, в разделе [MfgAddReg] я уже выставил дефолтные настройки, которые его отключают!
Ладно бы этим дело ограничилось, галку снять не проблема. Снимаем, открываем соединение, и...модем не отвечает! А в логах видно, что винда по прежнему упорно пытается пользовать управление потоком, будто и не существует никакой настройки. Всё же, после некоторой пляски с бубном в виде "изменить настройки, нажать OK, вернуть настройки" в свойствах соединения и свойствах модема, после нескольких попыток опросить модем во вкладке "диагностика", до винды ВНЕЗАПНО наконец доходит, что управление потоком вообще-то отключено. И после этого всё работает уже как обычно, все последующие соединения. Неужели "индусы" дяди Билли настолько не ожидали, что кто-то в далёкой России спустя много лет попытается прикрутить к их операционке урезанный китайский модем? Чудеса, да и только.
Хорошо иметь DOOM-ик в деревне!