< Orange Pi > USB Wifi Dongle ใช้งานได้สักที
เมื่อหลายเดือนก่อน ได้ USB Wifi Dongle มาในราคาที่ถูกมาก เพื่อใช้กับ Raspberry Pi ดังที่เขียนไปในตอน [ Raspberry Pi ] การใช้งานกับ LB-Link Wireless USB Adapter แต่เมื่อเอามาลองใช้กับ Armbian บน Orange Pi แล้ว กลับพบปัญหามากมาย ทั้งในส่วนการที่ Driver จาก Realtek ที่ไม่รองรับ (เข้าใจว่าปัญหานี้มาจากส่วนของ CPU H3 เอง ทำให้ Firmware ของ Realtek นั้นไม่สามารถใช้งานได้) และในส่วนของ Network Management ของ Armbian ที่ในตอนนั้น เหมือนจะไม่รองรับการใช้งาน Ethernet ร่วมกับ USB Wifi Dongle ด้วย (อาจจะมาจากปัญหาในส่วนของ Driver ด้วยก็เป็นได้)
แต่โดยรวมแล้วก็นับว่าลำบากยากยิ่งในการใช้งาน USB Wifi Dongle ตัวนี้ กับ Armbian แต่เมื่อไม่นานมานี้ ผมได้ลองรื้อมันออกมาต่อใหม่ เพราะว่าเริ่มพอมีเวลากลับมาลองเล่นอะไรบ้าง และพบว่ามีคนทำ Driver ที่แก้ไขแล้วของ USB Wifi Dongle นี้ไว้บน Github เลยคิดว่าจะเอามาลองหน่อย คงไม่เสียเวลามาก (มากเท่าๆกับที่ลองอะไรหลายอย่างไปก่อนหน้านี้)
ก่อนอื่นเลย เราต้องเปิด Orange Pi ตามปกติครับ ต่อ Internet ผ่าน Ethernet แล้วก็ update ให้เป็น Armbian รุ่นล่าสุดเสียก่อน
1 | apt-get update && apt-get upgrade |
ลองเสียบ USB Wifi Dongle แล้วตรวจสอบผ่านคำสั่ง lsusb เพื่อดูว่า Armbian มองเห็น USB Wifi Dongle หรือไม่
1 | sudo lsusb |
ถ้าหาก USB และตัว USB Wifi Dongle ไม่เสีย หรือไม่มีปัญหา ก็ควรที่จะเห็นอุปกรณ์นะครับ
จากนั้น จึงเข้าไปแก้ไข ไฟล์ Interface ใน Network
1 | nano /etc/network/interfaces |
โดยลบ # ที่อยู่ข้างหน้า
allow-hotplug wlan0 และ iface wlan0 inet dhcp
ออก
1 2 3 4 5 6 7 8 9 10 | auto lo iface lo inet loopback allow-hotplug eth0 iface eth0 inet dhcp allow-hotplug wlan0 iface wlan0 inet dhcp |
กด CTRL+X เพื่อปิดไฟล์ ซึ่งระบบจะถามว่า เราจะ save ไฟล์นี้หรือไม่
กด y และ enter เพื่อตอบตกลง
และต่อมาเราก็ติดตั้ง Driver ของ USB Wifi Dongle นี้ ซึ่ง Driver ที่มาจากทาง Realtek เองมีปัญหากับ CPU H3 ดังนั้นเราจึงต้องใช้ Driver ตัวอื่นที่มีคนทำไว้ให้ หลังจากที่ลองแล้วพบว่า Driver ที่ชื่อ rtl8192cu-fixes ของ pvaret นั้นใช้งานได้
เริ่มที่เตรียมเครื่องมือที่จะใช้ในการ compile source code และ เพิ่ม firmware ลงใน Linux Kernel ของเรา ซึ่งมีดังนี้ git , build-essential และ DKMS
1 | sudo apt-get install git build-essential dkms |
Git – ใช้ในการ Clone source code บน ระบบ git ซึ่งเป็นระบบควบคุมรุ่นไฟล์แบบหนึ่ง (Version Control System)
Build-essential – ใช้ในการ compile source code , build essential เป็นเครื่องมือในการพัฒนา ซึ่งจะประกอบด้วย library ที่จำเป็นต่างๆ ในการสร้างแพ็คเกจสำหรับ Linux
DKMS – Dynamic Kernel Module Support เป็นเฟรมเวิร์คที่ช่วยให้เราสามารถเพิ่ม Firmware ลงใน Linux Kernel ได้ง่ายขึ้น
จากนั้นก็ clone source code มาไว้ในเครื่องก่อน ในที่นี้เลือกที่จะเก็บไว้ในโฟลเดอร์ Public
1 2 | cd ~/Public git clone https://github.com/pvaret/rtl8192cu-fixes.git |
เนื่องจากสิ่งที่เราได้เป็น source file ของ firmware เราต้องทำการ compile มันเสียก่อน
ด้วยการติดตั้ง Firmware Driver บน DKMS
เพิ่ม Firmware ลงใน DKMS
1 | sudo dkms add ./rtl8192cu-fixes |
Build และติดตั้ง Firmware Driver
1 | sudo dkms install 8192cu/1.10 |
อัพเดทโมดูล
1 | sudo depmod -a |
เพิ่ม Driver ตัวมาตรฐานเดิมที่มีปัญหาในรายการ Blacklist
1 | sudo cp ./rtl8192cu-fixes/blacklist-native-rtl8192.conf /etc/modprobe.d/ |
เพิ่ม Driver ในการโหลด ตอนเปิดเครื่อง โดยเพิ่ม 8192cu ในไฟล์ modules.conf
และใส่ # ในรายการ wifi อื่นๆเช่น 8188 หรือ 8189
1 | nano /etc/modules-load.d/modules.conf |
#8189es
8192cu
กด CTRL+X เพื่อปิดไฟล์ ซึ่งระบบจะถามว่า เราจะ save ไฟล์นี้หรือไม่กด y และ enter เพื่อตอบตกลง
จากนั้นก็รีบูทระบบ
เมื่อเริ่มระบบใหม่ขึ้นมา
เราสามารถตรวจสอบการเรียกใช้ และติดตั้ง Driver ของ USB Wifi Dongle ได้จากคำสั่ง
1 | dmesg |
และลองเลื่อนหาดูว่า มีการติดตั้งเรียบร้อยไหม
และเมื่อเราดูใน Network Manager ที่อยู่มุมขวาบน จะเห็นทั้งในส่วนของ Ethernet (eth0) และ Wifi (wlan0)
รวมถึงมาสามารถดูได้ผ่าน คำสั่ง sudo ifconfig หรือ sudo iwconfig ได้เช่นกันครับ
และแล้วมันก็ได้ใช้งานกับ Orange Pi เสียที
ขอให้โชคดีกับ USB Wifi Dongle และการเริ่มต้นปีใหม่นะครับ ทุกๆท่าน