RT73 Wireless Driver

Nếu được hỏi từ trước đến giờ, thiết bị wireless nào khiến tôi vất vả nhất, tôi sẽ trả lời: đó là wireless card dòng chipset 2×00 của Real Tek, cụ thể là RT73! Không phải ngẫu nhiên mà có nguyên một project để xây dựng driver cho dòng này và trên Google thì nhan nhản những lời kêu ca và hướng dẫn cài driver cho nó.

1. RT73 For Linux

Khi “đụng đầu” RT73 với Ubuntu 7.04, tôi nhanh chóng làm cho nó hoạt động được theo hướng dẫn ở đây. Bên dưới là những bước tôi đã làm:

1. Lấy gói source cvs mới nhất củaRT73

2. Giải nén

3. Dẹp bỏ những module có thể gây ra conflict cho rt73 (nếu có):

modprobe -r rt73usb
modprobe -r rt2570
modprobe -r rt2500usb
modprobe -r rt2x00lib

4. Nhảy (cd) vào thư mục Module của thư mục source vừa giải nén, make, make install. Có một lưu ý quan trọng ở đây là do đây là quá trình biên dịch module nên ngoài gói “build-essential”, trên Ubuntu ta còn cần phải có linux-headers. Để cài linux-headers bằng apt-get:

apt-get install linux-headers-'uname -r'

Nếu bạn compile kernel khác, không có trong repo headers của Ubuntu thì dùng ngay thư mục source kernel vừa compile làm headers. Đường dẫn đến thư mục headers sẽ được link đến file /lib/modules/2.x.x/build. Nếu cần thiết thì ln lại file này để chỉ đến đúng headers.

5. Load module vừa install lên

modprobe rt73

6. Kiểm tra card wireless

sudo ifconfig wlan0 up
iwlist scan wlan0

Nếu kết quả scan ra được các mạng wireless đang hoạt động xung quanh là driver đã hoạt động tốt. Để cấu hình cho mạng wireless có thể sử dụng các công cụ có giao diện đồ hoạ như Wifi-radar, RutilT, … hoặc bằng command line.

Để rt73 hoạt động tốt cho các lần khởi động sau, ta cần một số thao tác nữa:

7. Soạn file /etc/modproble.d/blacklist, thêm các dòng sau vào “danh sách đen”:

blacklist rt73usb
blacklist rt2570
blacklist rt2500usb
blacklist rt2x00lib

8. Thêm các dòng sau vào file /etc/network/interfaces để kích hoạt wlan0 khi khởi động

auto wlan0
iface wlan0 inet dhcp
pre-up ifconfig wlan0 up

Có thể thêm các chi tiết để thiết lập sẵn mạng như trong hướng dẫn, tôi không làm thêm bước này vì không cần thiết.

Đến đây thì bạn thấy mọi việc đã ổn, mạng không dây trên máy hoạt động rất tốt, nhưng với tôi thì chưa ổn.

2. NDISWRAPPER

Không hiểu vì sao, driver rt73 này chạy trên card wireless của tôi khi dò các mạng wireless xung quanh bị thiếu rất nhiều thông tin. Chạy lệnh “iwlist scan” thì kết quả như thế này:

wlan0 Scan completed :
Cell 01 – Address: 00:40:F4:E1:32:0C
ESSID:”TV-Link JSC”
Mode:Managed
Channel:6
Encryption key:off
Bit Rates:0 kb/s

Cell 02 – Address: 00:14:BF:E7:05:59
ESSID:”linksys”
Mode:Managed
Channel:6
Encryption key:on
Bit Rates:0 kb/s

Mà đáng lẽ ra kết quả phải như thế này

wlan0 Scan completed :
Cell 01 – Address: 00:40:F4:E1:32:0C
ESSID:”TV-Link JSC”
Protocol:IEEE 802.11g
Mode:Managed
Frequency:2.437 GHz (Channel 6)
Quality:46/100 Signal level:-66 dBm Noise level:-96 dBm
Encryption key:off
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
48 Mb/s; 54 Mb/s
Extra:bcn_int=100
Extra:atim=0

Cell 02 – Address: 00:14:BF:E7:05:59
ESSID:”linksys”
Protocol:IEEE 802.11g
Mode:Managed
Frequency:2.437 GHz (Channel 6)
Quality:15/100 Signal level:-86 dBm Noise level:-96 dBm
Encryption key:on
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
24 Mb/s; 36 Mb/s; 54 Mb/s; 6 Mb/s; 9 Mb/s
12 Mb/s; 48 Mb/s
Extra:bcn_int=100
Extra:atim=0
IE: WPA Version 1
Group Cipher : TKIP
Pairwise Ciphers (1) : TKIP
Authentication Suites (1) : PSK

Thiếu sót này cũng không ảnh hưởng lớn lắm vì mạng vẫn kết nối bình thường, nhưng nếu ta muốn sử dụng thêm những thông tin khác của mạng, ví dụ Quality để cho biết chất lượng kết nối thì quả là khó chịu. Tình thế càng thêm khó khăn khi hầu như chẳng có ai dùng rt73 rơi vào trường hợp như tôi. Tôi quyết định phải tự fix lỗi này thôi. Sau hai ngày loay hoay với các giải pháp:

  • Có thể vấn đề do kernel bị thiếu support gì đó cho wireless -> Compile lại kernel, chọn một cách “mù quáng” tất cả những gì có dính tới wireless
  • Có thể do driver rt73 của tôi đã cũ, không hỗ trợ tốt -> Get cvs mới nhất, install lại
  • Có thể do wireless-tools cũ, không hỗ trợ tốt. Tôi để ý có một sự conflict giữ Wireless-Tools và Wireless Extensions trong Ubuntu Feisty Fawn. Lệnh sau cho bạn thấy điều này:

    t3318@lovelylaptop:~$ iwconfig --version
    iwconfig Wireless-Tools version 28
    Compatible with Wireless Extension v11 to v20.
    Kernel Currently compiled with Wireless Extension v21.
    eth1 Recommend Wireless Extension v18 or later,
    Currently compiled with Wireless Extension v21.

    Conflict như thế nhưng không ảnh hưởng gì đến các thiết bị wireless khác. Tuy nhiên thà “giết lầm hơn bỏ sót”, thế là tôi install Wireless-Tools 29 để nó kịp với Wireless Extenssion v21

Tuy nhiên, tin đáng buồn là tất cả những nỗ lực trên của tôi đều không thay đổi được gì. Cuối cùng, tôi đành dùng đến phương án cuối cùng: ndiswrapper để sử dụng driver rt73 của Windows (cũng cần nói thêm là Windows XP hoạt động đầy đủ với card wireless này). Nếu như download ndiswrapper rất dễ dàng thì việc khó hơn là tìm driver rt73 cho Windows. Cách thông thường để lấy được driver này là install Windows rồi copy driver ra để dùng. Điều này khó khăn đối với tôi vì tôi chẳng có máy nào để install Windows cả! Cuối cùng tôi cũng tìm được một chỗ để lấy RT73 driver cho Windows do Gigabyte support. Đủ nguyên liệu rồi thì bắt tay vào nấu:

$tar xvzf ndiswrapper-1.21.tar.gz
$cd ndiswrapper-1.21/
$make
$sudo make install
$cd ..
$unzip comm_driver_wi05gs_1.0_950726.zip
$cd comm_driver_wi05gs_1.0_950726.zip_FILES/GN-WB01GS_WI05GS/drivers/WINXP
$sudo ndiswrapper -i rt73.inf
#Kiem tra driver da install
$ndiswrapper -l
rt73 : driver installed
$sudo depmod -a
$modprobe ndiswrapper
#Kiem tra load module thanh cong neu lenh sau khong co thong bao error
$tail /var/log/messages
$sudo ifdown wlan0
$sudo ifconfig wlan0 up
$iwlist scan

Work FINE!!!

3. Kết luận

Thông qua bài viết này, tôi muốn đề cập đến các vấn đề sau:

  • Cài đặt RT73 driver cho dòng chipset 2×00 của Real Tek trên Linux
  • Sử dụng ndiswrapper để cài đặt driver wireless Windows trên Linux
  • Khẳng định lại một điều, còn nhiều việc phải làm với device driver trên Linux nếu như các restricted driver vẫn còn bị restrict như thế này!

Đông Thao

About dongthao

The best things in life, they are free ... (Cry on my shoulder lyric)
This entry was posted in FOSS, Linux, Linux Tutorial. Bookmark the permalink.

Có 7 phản hồi tại RT73 Wireless Driver

  1. moriator nói:

    Em vẫn chưa biết cách nào sử dụng wiless cả. Laptop của em là dòng Centrino. Em vào Restricted Driver Manager thì thấy card wireless đã được enable rồi, nhưng làm sao để kết nối ạ?
    Em mới bước chân vào Linux nên chưa biết gì nhiều cả.🙂

  2. dongthao nói:

    Nếu đã có driver đúng của card rồi thì em dùng trình quản lý network của OS em đang dùng là kêt nối được thôi. Do không biết rõ em dùng Distro gì nên anh không nói cụ thể được. Em vào phần thiết lập (trong menu System, Administration hay gì đó đại loại vậy) chọn Network thử xem.

  3. moriator nói:

    Em dùng Ubuntu 7.04 ạ. Em vào Network lẫn Network Tools nhưng không rõ phải làm gì nữa. Có cách nào làm cho wireless tự tìm server để kết nối không ạ (như phần mềm kèm theo máy trong Windows XP). Còn một tình trạng tồi tệ nữa là sau khi cài Ubuntu, Windows XP cũng không kết nối được wireless luôn (cứ báo lỗi chưa enable, đã cài lại và update driver).

    Mong anh sớm hồi âm. Cảm ơn!

  4. dongthao nói:

    Nếu là Ubuntu 7.04 thì em làm như sau: vào Network, ở tab Connections em có thấy Wireless connection ở dòng đầu tiên không? Nếu thấy thì ok, wireless card của em đã ổn rồi.
    Em chọn Properties nó sẽ hiện ra thiết lập cho wireless card của em. Lúc này trong combo box ESSID em sổ xuống để chọn mạng mình cần kết nối. Các thông tin khác như Password, Configuration em nên liên lạc với admin để biết. Ở các quán cafe wifi thì em cứ để password trống và Configuration là DHCP.
    Tình trạng ảnh hưởng đến Windows XP như em nói không thể nào do Ubuntu gây ra được. Theo như em mô tả thì anh nghi ngờ là em đã disable cái wireless card đi rồi! Em vào Network Connections kiểm tra lại thử xem sao.
    Good luck!

  5. moriator nói:

    Huhu, nó chỉ có Wired connection với Modem connection thôi, chẳng thấy Wireless connection đâu cả. Vào Restricted Driver Manager thì thấy ghi “Intel(R) PRO/Wireless 3945 Network Connection driver for Linux” đã Enable và In use. Bây giờ em cần phải làm gì ạ?

  6. moriator nói:

    Cảm ơn anh đã nhiệt tình giúp đỡ. Em nghĩ là cái card wireless của em có vấn đề rồi. Thôi đi bảo hành vậy ^^

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s