- Wi-Fi адаптер через OTG
- I. Старт
- II. Разгон
- III. Препятствия
- 1. Версии
- 2. ewma
- 3. Светодиод
- 4. Версия firmware
- IV. Финиш
- TP-Link TL-WN722N: драйвер, настройка, точка доступа Wi-Fi
- Установка драйвера на TP-Link TL-WN722N
- Windows 10 и адаптер аппаратной версии V1
- Возможные проблемы и решения
- TL-WN722N как точка доступа (раздаем Wi-Fi)
Wi-Fi адаптер через OTG
Идея перевести сетевую карту телефона в режим монитора разрушилась по причине собственной наивности и незнания элементарной информации о том, что подавляющее большинство мобильных сетевых карт этот самый режим монитора и не поддерживают.
Идея реализации задумки с помощью внешнего беспроводного Wi-Fi адаптера или «свистка», поддерживающего желанный режим монитора, рушилась десятки раз из-за новых и новых ошибок и потери веры в то, что это вообще возможно, но переросла в данную статью.
Итак, как подключить внешний Wi-Fi адаптер к устройству на Android или бег с препятствиями на дистанции «вставил — netcfg wlan0 up»:
Должно быть в наличии:
- Телефон на Android
- Поддержка OTG и сам OTG
- Terminal Emulator
- ROOT
- Исходники ядра
FAQ — структура выглядит так:
Мой случай:
- Samsung GT-P5100 Galaxy Tab 2 10.1, Андроид 4.2.2
- OTG «30-pin — USB»
- Terminal Emulator for Android
- ROOT
- Исходники стокового ядра 3.0.31-1919150 с сайта Самсунг
- Адаптер TP-LINK TL-WN722N на чипсете AR9271
- ath9k_htc/htc_9271.fw
- Дистрибутив Ubuntu 15.04 в VMware
- android-tools-adb
Начну. Но попрошу учесть, что далее все рассматривается для вышеперечисленного набора и алгоритм, скорее всего, не является универсальным, но отклонения незначительны.
I. Старт
Первым делом необходимо добыть фирмварь вашего адаптера. Вставляю адаптер в компьютер и выполняю команду dmesg . Нахожу:
Где слово правее слова driver — искомая информация. У меня это — ath9k_htc. Гуглю для него firmware. Качаю. Закидываю .fw-файл на телефон в /system/etc/firmware
Затем устанавливаю ADB:
apt-get install android-tools-adb
Третьим этапом качаю тулчейн (компилятор под ARM) отсюда. Там большой архив, мне нужна лишь папка android-platform_prebuilt-android-sdk-adt_r20-0-ga4062cc.zip\android-platform_prebuilt-a4062cc\linux-x86\toolchain\arm-eabi-4.4.3, которую я распаковываю в произвольное место.
II. Разгон
Для начала пишу терминале:
Затем перехожу в терминале в каталог с исходниками ядра, загруженными ранее, пишу
make help и получаю тучу информации, среди которой нужно найти нечто, заканчивающееся на _defconfig, у меня это:
И в завершении запускаю графическую конфигурацию ядра:
Появляется вот такое окно:
Продвигаюсь по маршрутам:
- Networking support → Wireless
Спускаюсь к Generic IEEE 802.11 Networking stack (mac80211) и нажимаю на пробел, наблюдая появление значка М перед этим пунктом
Device Drivers -> Network device support → Wireless LAN
Ставлю М у своего чипсета, в моем случае — Atheros Wireless Cards
Затем перехожу в сам этот раздел и внутри отмечаю все тем же пробелом и знаком M нужный мне пункт.
Сохраняю. Возвращаюсь в терминал, а если вы его закрыли, то в и каталог с исходниками тоже, и выполняю сначала make modules_prepare , а следом просто make . Результат потребует ожидания. Мой итоговый набор:
Потребуются модули (.ko-файлы), включающие слово ath и mac80211.ko. Переношу их на телефон.
Можно использовать adb, работая через компьютер, а можно не использовать и работать через терминал телефона, печатая команды пальцами по экрану. Я выбрал adb.
Напомню, как он работает. Подключаю телефон через USB (отладка, естественно, включена) и выполняю:
adb start-server
adb shell
su
Я в телефоне и под рутом.
Смотрю, какие модули уже есть командой lsmod и выгружаю их все, если это возможно, командой rmmod имямодуля
Затем перехожу в каталог с вышеперечисленными модулями:
cd /sdcard/ваш путь/
Можно убедиться в их наличии командой ls .
Загружаю их командой insmod имямодуля в такой и только такой последовательности (иначе просто не загрузится, выдавая ошибку):
ath.ko
ath9k_hw.ko
ath9k_common.ko
mac80211.ko
ath9k_htc.ko
III. Препятствия
В этом и вся соль, без которой статья была бы слишком простой.
1. Версии
Естественно, первая ошибка возникает на первом этапе.
Смотрю, что скажет об этом буфер сообщений ядра, выполнив команду dmesg :
Не совпадают версии. 3.0.31 не есть 3.0.31-1919150.
Открываю тот самый Makefile в исходниках ядра и в самом верху файла нахожу:
VERSION = 3
PATCHLEVEL = 0
SUBLEVEL = 31
EXTRAVERSION =
NAME = Sneaky Weasel
VERSION = 3
PATCHLEVEL = 0
SUBLEVEL = 31
EXTRAVERSION = -1919150
NAME = Sneaky Weasel
И сохраняю.
Заключительный этап пройдет в каталоге /include/config, где в файле kernel.release я поменяю 3.0.31 на 3.0.31-1919150
Снова make modules_prepare , make и далее по предыдущему пункту.
2. ewma
Загружая mac80211.ko снова имею ошибку, о которой dmesg скажет следующее:
Чудом прочитав на одном из англоязычных форумов опасное, но единственное в интернете, «решение», я перехожу в /net/mac80211/ и в файлах rx.c и sta_info.c и просто удаляю [либо комментирую (//)] строки ewma_add(&sta->avg_signal, -status->signal); и ewma_init(&sta->avg_signal, 1024, 8); соответственно.
Опять перекомпилирую модули и двигаюсь дальше.
3. Светодиод
При загрузке ath9k_htc.ko и mac80211.ko очередные ошибки, у mac80211.ko это:
А у ath9k_htc.ko это:
Если ieee80211_-ошибки от ath9k_htc.ko это потому что я пытаюсь его загрузить до mac80211.ko, то led_-ошибки от обоих модулей от того, что телефон не понимает, что делать со светодиодом на моем адаптере. Тут два варианта развития событий.
В первом просто убирается в графической конфигурации ядра значок [*] напротив
Networking support → Wireless → Enable LED triggers и Device Drivers → LED Support.
А во втором этот самый значок заморожен и снять его нельзя. Это значит, что при выборе моего адаптера, автоматически выбирается «поддержка» светодиода, убрать которую нельзя. Конечно же, это мой случай:
Кнопка помощи по Device Drivers → LED Support выводит следующую информацию по разделу:
…
config ATH9K_HTC
tristate «Atheros HTC based wireless cards support»
depends on USB && MAC80211
select ATH9K_HW
select MAC80211_LEDS
select LEDS_CLASS
select NEW_LEDS
select ATH9K_COMMON
.
…
config ATH9K_HTC
tristate «Atheros HTC based wireless cards support»
depends on USB && MAC80211
select ATH9K_HW
select ATH9K_COMMON
.
и сохраняю. Теперь можно снимать галочки:
Здесь и вовсе исчез пункт:
Опять и снова перекомпиляция, новые модули и т.п.
Вуаля. Все модули загружены. Выключаю Wi-Fi на телефоне и подключаю адаптер. Но светодиод на нем, как вы уже догадались, работать не будет. Оно и не нужно.
4. Версия firmware
…
[ 7582.477874] C0 [ khubd] ath9k_htc 1-1:1.0: ath9k_htc: Please upgrade to FW version 1.3
.
Просто качаем другой фирмварь, но уже требуемой версии, и кладем его вместо прошлого.
IV. Финиш
Теперь никаких проблем быть не должно. Выключаю родной Wi-Fi, все модули загружены, фирмварь нужной версии. Вставляю адаптер и netcfg впервые приносит счастье. Устанавливаю для появившегося сетевого интерфейса режим монитора и поднимаю его. Успех!
Ну а как и зачем зачастую используется режим монитора, вы и так все знаете. Спасибо за внимание!
Источник
TP-Link TL-WN722N: драйвер, настройка, точка доступа Wi-Fi
Эта страничка полностью посвящена Wi-Fi адаптеру TP-Link TL-WN722N. Очень популярная модель, которая уже давно и успешно продается. Отличный адаптер для подключения к Wi-Fi сети стационарных компьютеров, или ноутбуков. Есть внешняя антенна, что несомненно большой плюс. Благодаря ей адаптер лучше ловит Wi-Fi сигнал. Так же из плюсов я бы выделил простую настройку. Нет проблем с драйверами (ну почти нет) . Стабильно работает как в Windows 10, Windows 8, Windows 7, так и в Windows XP. Бывают проблемы, когда компьютер не видит адаптер, или TL-WN722N не видит Wi-Fi сети. Но это, как правило, легко решается и происходит обычно из-за настроек операционной системы. Ну или по вине и неопытности самого пользователя. Мы в этой статье рассмотрим самые популярные проблемы.
На момент написания этой статьи, я уже несколько недель пользуюсь Wi-Fi адаптером TP-Link TL-WN722N V 1.0. У меня ноутбук, раньше подключался через встроенный Wi-Fi модуль. Но пришлось перенести ноутбук подальше, и поставить его на полку под столом. И Wi-Fi начал ловить очень плохо (1-2 деления) . Пришлось через небольшой USB удлинитель подключить этот адаптер. На Windows 10 вообще ничего не настраивал, просто подключил и система сама установила драйвера. Правда, в диспетчере устройств он у меня отображается как «Atheros AR9271 Wireless Network Adapter». Но все хорошо работает.
Есть две аппаратные версии адаптера TP-Link TL-WN722N (на официальном сайте есть V3, но там драйвер только на MAC, на момент написания этой статьи) . Аппаратная версия V1 работает на чипсете Atheros AR9271, а V2 на REALTEK RTL8188EUS. На официальном сайте есть драйвера как под Windows, так и под MAC и Linux. Характеристики описывать не будут, их можно посмотреть на любом сайте. Скорость Wi-Fi сети до 150 Мбит/с.
Еще один важный момент. Через адаптер TL-WN722N можно не только подключатся к беспроводным сетям, но и раздавать интернет по Wi-Fi сети. Он может работать как точка доступа (SoftAP) . Настроить раздачу можно как средствами Windows, так и через фирменную утилиту. Ниже напишу об этом более подробно, и дам необходимые ссылки.
Установка драйвера на TP-Link TL-WN722N
Весь процесс настройки практически любого Wi-Fi адаптера сводится к установке драйверов. Конечно, сначала нужно подключить сам адаптер к компьютеру, или ноутбуку.
Просто подключите его в USB-порт.
Для второй аппаратной версии (ver. 2) драйвер есть для всех версий Windows, в том числе для Windows 10. Для первой аппаратной версии (ver. 1) драйверов для TL-WN722N под Windows 10, нет. Но, как я уже писал выше, у меня все заработало автоматически. В интернете так же пишут, что подходят драйвера от Windows 8.1, или с диска.
Если аппаратная версия там не указана, то это V1.
В комплекте идет диск с драйверами и утилитой. Можно установить все оттуда. Просто запустите диск и следуйте инструкциям.
Чтобы скачать драйвер, переходим по ссылке http://www.tp-linkru.com/download/TL-WN722N_V1.html, выбираем свою аппаратную версию, переходим на вкладку «Драйвер» и загружаем первый в списке файл для Windows.
Установка:
- Для аппаратной версии V2 драйвер идет в виде .exe файла. Просто запускаем файл Setup.exe и устанавливаем.
- Для V1, в архиве находятся папки с файлами для разных версий Windows. В таком случае, нужно зайти в диспетчер устройств, на вкладку «Сетевые адаптеры», нажать правой кнопкой на адаптер и выбрать «Обновить драйвер».
Дальше выбираем пункт «Выполнить поиск драйверов на этом компьютере».
Указываем папку с драйвером для нашей версии Windows и нажимаем «Далее».
Все должно быть установлено, и TP-Link TL-WN722N начнет работать.
Windows 10 и адаптер аппаратной версии V1
Если автоматически все не установилось, то можно попробовать установить драйвер с диска, или от Windows 8.1. Вот так:
- Скачайте архив с драйверами для версии V1.
- Извлеките папки из архива.
- Зайдите в папку «Windows 8.1 64bit» (или 32bit) , нажмите правой кнопкой на файл athuwbx.inf и выберите «Установить».
Возможно, после этого понадобится перезагрузить компьютер.
Или используйте способ описанный выше.
Возможные проблемы и решения
Рассмотрим самые популярные проблемы, с которыми пользователи сталкиваются чаще всего.
- Компьютер не видит TP-Link TL-WN722N. Если вы подключили адаптер в USB-порт компьютера, и Wi-Fi не появился, то скорее всего нужно просто установить драйвера. Я писал об этом выше. Зайдите в диспетчер устройств и проверьте. Если же компьютер вообще никак не реагирует на подключение адаптера, в диспетчере устройств ничего не появляется, то попробуйте подключить его в другой USB-порт. Не используйте USB удлинитель. Проверьте на другом компьютере, или ноутбуке.
- Если TL-WN722N не видит Wi-Fi сети. Нет доступных подключений. Самая популярная проблема. Вроде все работает, но не отображается список доступных для подключении беспроводных сетей. Но другие устройства видят доступные сети. Чаще всего, это происходит из-за отключенной службы автонастройки WLAN в Windows. Нужно проверить, и если она отключена, то запустить ее.
В статье Служба автонастройки WLAN. Что это, и как включить в Window я писал об этом более подробно. Так же убедитесь, что в том месте, где установлен адаптер, есть сигнал беспроводной сети. Проверьте, хорошо ли прикручена антенна.
- Низкая скорость, обрывы соединения. Первым делом запретите отключение Wi-Fi адаптера для экономии энергии. Как это сделать – писал здесь. Переустановите драйвер. Попробуйте установить с диска. Если у вас Windows 10, то попробуйте решения из статьи: отключается Wi-Fi в Windows 10.
Если вы столкнулись с какими-то другими проблемами, то напишите о них в комментариях. Особенно, если знаете решения 🙂
TL-WN722N как точка доступа (раздаем Wi-Fi)
Через адаптер TP-Link TL-WN722N можно раздавать Wi-Fi с компьютера, предоставив общий доступ к интернету для других устройство. Настроить точку доступа можно через фирменную утилиту TP-Link. Достаточно включить режим «SoftAP» и задать необходимые параметры (имя сети, пароль) .
Но я рекомендую настраивать раздачу Wi-Fi средствами Windows по моим инструкциям. Можно использовать это руководство: как раздать интернет через Wi-Fi адаптер на ПК с Windows 10.
Или более подробные инструкции:
Там все очень подробно расписано и показано. У вас все получится!
Все вопросы, дополнения, замечания, «Спасибо» оставляйте в комментариях. Деньги переводите на карточку 🙂 Всего хорошего!
Источник