Wusbf54g

Материал из NNLUG Wiki.

Перейти к: навигация, поиск

Настройка wusbf54g под Linux.

Описание процесса настройки Linksys wi-fi finder под Linux.

Содержание

Необходимые инструменты

  • Wi-Fi finder Wusbf54g
  • Исходные коды модулей для работы с Wusbf54g
  • FirmWare от вашего устройства, поставляющиеся на официальном диске с драфверами, вместе с вашим устройством.
  • Исходные коды ядра, той версии, которая используется в вашей системе.

Сборка модуля

Приступим к самой важной части - соберем необходимый модуль и установим FirmWare в вашу систему GNU/Linux.

развернём, скаченные нами драйвера:

tar zxf zd1211-driver-r83.tgz

теперь перейдём в появившуюся дерикторию:

cd zd1211-driver-r83

теперь надо подправить исходники... открываем текстовым редактором файл src/zdusb.c и находим вот таке строчки:

#elif defined(ZD1211)
               { USB_DEVICE(0x0105, 0x145f) },
               { USB_DEVICE(0x0586, 0x3401) },
               { USB_DEVICE(0x0586, 0x3409) }, 
...

вставим между любыми двумя строчками вот эту:

{ USB_DEVICE(0x13b1, 0x001e) },

Ну вот вроде и всё... теперь надо скомпилировать модуль:

make

немного подождав, мы имеем готовый модуль... или не имеем =) если что, то смотрим на сообщения об ошибках.

Собрав модуль, переместим его в папку к остальным модулям ядра:

cp zd1211.ko /lib/modules/<версия вашего ядра>/kernel/drivers/net/

набираем:

depmod -ae

Автоматизация сборки под Ubuntu

Для Ubuntu (наверняка и для новых Debian) весь процесс сборки и установки ядра может быть автоматизирован. Для этого необходимо установить пакет module-assistant:

sudo apt-get install module-assistant

затем запустить утилиту module-assistant.

Она предложит установить заголовки ядра, обновить список известных модулей, в меню SELECT вы выбираете модуль zd1211. Теперь последовательно заходя в пункты меню вы проверяете наличие уже скомпилированного модуля, если его нет - закачиваете последние исходники, компилируете и устанавливаете. От вас требуется только заходить в пункты меню, а module-assistant делает всю работу сам.

Добавление FirmWare

Теперь необходимо скопировать firmware в папку /usr/lib/hotplug/firmware
Например, отсюда [1]
там должны оказаться файлики по типу:

zd1211-WS11Ub.fw
zd1211-WS11UPh.fw
zd1211-WS11UPhm.fw
zd1211-WS11UPhR.fw
zd1211-WS11Ur.fw

Подключение устройства

ну вот... теперь можно подгружать модуль:

modprobe zd1211

если всё ОК, то вы можете увидеть в логах (/var/log/messages) примерно следующее:

# tail /var/log/messages
... 
Sep 21 16:21:55 skull kernel: zd1211 - http://zd1211.ath.cx/ - r83
Sep 21 16:21:55 skull kernel: Based on www.zydas.com.tw driver version 2.5.0.0
Sep 21 16:21:55 skull kernel: usbcore: registered new driver zd1211

Теперь подключим устройство в USB порт... и опять смотрим логи:

# tail /var/log/messages 
...
Sep 21 16:23:55 skull kernel: usb 1-3: new high speed USB device using ehci_hcd and address 13
Sep 21 16:23:55 skull kernel: usb 1-3: configuration #1 chosen from 1 choice
Sep 21 16:23:55 skull kernel: usb 1-3: reset high speed USB device using ehci_hcd and address 13
Sep 21 16:23:55 skull kernel: Release Ver = 4802
Sep 21 16:23:55 skull kernel: EEPORM Ver = 4330
Sep 21 16:23:55 skull kernel: AiroHa AL2230RF
Sep 21 16:23:55 skull kernel: AllowedChannel = 000107ff
Sep 21 16:23:55 skull kernel: Region:16

Настройка сети

Теперь давайте попробуем настроить беспроводную сеть.

ad-hoc mode

Для начала попробуем соедениться с таким же ноутбуком, распологающимся недалеко от вас.

На нашей системе переведем wi-fi finder в режим ad-hoc и установим для него имя сети.

# iwconfig wlan0 mode ad-hoc
# iwconfig wlan0 essid nnlugnet

После того как мы сделали основные настройки wi-fi соединения зададим ip адрес нашего сетевого адаптера.

# ifconfig wlan0 192.168.1.1

Мы "подняли" интерфейс и теперь можем проверить применились ли все наши параметры.

#iwconfig wlan0
wlan0    IEEE 802.11b  ESSID:"nnlugnet"  Nickname:"LinkSys"
         Mode:Ad-Hoc  Frequency:2.437 GHz  Cell: 00:30:4F:3A:A3:D2   
         Bit Rate:11 Mb/s   Sensitivity:1/3  
         Retry limit:4   RTS thr:off   Fragment thr:off
         Encryption key:off
         Power Management:off
         Link Quality=32/92  Signal level=-60 dBm  Noise level=-92 dBm
         Rx invalid nwid:0  Rx invalid crypt:11  Rx invalid frag:62
         Tx excessive retries:0  Invalid misc:0   Missed beacon:0

Для второго ноутбука проводим подобные настройки беспроводного интерфейса. И задаем ip адрес 192.168.1.2

Теперь вы можете попробовать пропинговать второй ноутбук.

$ ping 192.168.1.2
PING 192.168.1.2 (192.168.1.2) 56(84) bytes of data.
64 bytes from 192.168.1.2: icmp_seq=1 ttl=64 time=7.25 ms
64 bytes from 192.168.1.2: icmp_seq=2 ttl=64 time=2.01 ms
64 bytes from 192.168.1.2: icmp_seq=3 ttl=64 time=2.00 ms

Если вы увидели что то подобное - то ваше беспроводное соединение установлено и вы можете начинать играть в Quake3!

Master mode

У бепроводного адаптера LinkSys Wusbf54g есть очень интересная особенность. Он имеет возможность выполнять роль точки доступа для других беспроводных устройств.

Для перевода вашего беспроводного адаптера LinkSys в этот режим воспользуемся все той же утилитой iwconfig.

 # iwconfig wlan0 mode master
 # iwconfig wlan0 essid nnlugnet

Задаем ip адрес нашей точки доступа

# ifconfig wlan0 192.168.1.1

И теперь мы имеем возможность измерять уровень сигнала от второго ноутбука до нашего LinkSys адаптера.

Изображение:SWSCANNER.jpg


Сторонние ссылки

  • [2] - сайт opensource модулей для ZayDas.
  • [3] - статья по запуску wusbf54g в режиме точки доступа.


Пакет для Ubuntu Dapper

Уже собранный модуль для Ubuntu Dapper Drake вы можете взять здесь.

wusbf54g-ubuntu-modules-firmware.tgz

В архив уже включены firmware файлы. Вам нужно только распаковать

tar -zxf wusbf54g-ubuntu-modules-firmware.tgz

и скопировать файлы в нужные места

cd wusbf54g-modules
cp zd1211.ko /lib/modules/`uname -r`/kernel/drivers/usb/net/zd1211/
cp -R usr /

загрузить модуль

insmod /lib/modules/`uname -r`/kernel/drivers/usb/net/zd1211/zd1211.ko
Личные инструменты