Kết nối wifi cho Intel galileo bằng card wifi (cổng mini PCI)

Giới thiệu

Với cổng mini PCI, chúng có thể làm rất nhiều thứ với Intel Galileo, có thể kể đến như kết nối wifi, gắn thêm card đồ họa để xuất màn hình,… Hôm nay, chúng ta sẽ tìm hiểu về cách kết nối wifi cho Intel Galileo thông qua cổng mini PCI này.

Bạn cần

  • Intel Galileo Gen 1 / 2
  • Full-sized mini PCI card wifi driver hoặc half-sized mini PCI card wifi driver (với một miếng đế half-sized). 

Full sized

Half sized

Tiến hành

Để dùng được card wifi, bạn cần cài hệ điều hành IOT Devkit tại bài viết [Intel Galileo] Cài đặt Linux Yocto (iot-devkit) lên Intel Galileo trước.

Sau đó, trong môi trường SSH, bạn chạy lệnh sau:

$ lspci -k | grep -A 3 -i "network"

Nếu kết quả bạn nhận được có dạng dưới đây, thì con card wifi của bạn dùng được.

01:00.0 Network controller: Qualcomm Atheros AR9285 Wireless Network Adapter (PCI-Express) (rev 01)
        Subsystem: AzureWave AW-NE785 / AW-NE785H 802.11bgn Wireless Full or Half-size Mini PCIe Card
        Kernel driver in use: ath9k
        Kernel modules: ath9k

Thường thì mã pci id của card wifi là 01:00.0. Trong danh sách driver wifi của IOT Devkit có rất nhiều dòng card wifi phổ biến. Nếu các bạn không nhận được driver card wifi của mình thì hãy bình luận ở dưới nhé (nhớ đảm bảo card wifi của bạn hoạt động tốt trong laptop nhé).

Trong Intel Galileo, hệ điều hành linux IOT Devkit hỗ trợ cho ta chương trình connman, chương trình này giúp chúng ta quản lý các kết nối wifi từ card wifi driver ở cổng mini PCI.

Bạn chạy các lệnh sau để tiến hành cài đặt kết nối wifi.

$ connmanctl
connmanctl> enable wifi
Enabled wifi
connmanctl> technologies
/net/connman/technology/p2p
	Name = P2P
	Type = p2p
	Powered = True
	Connected = False
	Tethering = False
/net/connman/technology/ethernet
	Name = Wired
	Type = ethernet
	Powered = True
	Connected = False
	Tethering = False
/net/connman/technology/wifi
	Name = WiFi
	Type = wifi
	Powered = True
	Connected = True
	Tethering = False	
connmanctl> scan wifi
	Scan completed for wifi
connmanctl> services
*AO Wired                ethernet_000000000000_cable
<WiFi SSID1>             wifi_<adapter MAC>_<hotspot 1 numeric SSID>_<type e.g. managed>_<encryption e.g. psk, or wep resp>
<WiFi SSID2>             wifi_<adapter MAC>_<hotspot 2 numeric SSID>_<type e.g. managed>_<encryption e.g. psk, or wep resp>

Chúng ta sẽ thiết đặt các câu lệnh sau để chỉnh chế độ auto connect vào mạng wifi và bật chế độ DHCP cho ipv4.

connmanctl> config wifi_<MAC_a>_<MAC_h>_managed_psk --autoconnect yes --ipv4 dhcp 
	Error wifi_<MAC_a>_<MAC_h>_managed_psk: Invalid service
	Service      wifi_<MAC_a>_<MAC_h>_managed_psk Ethernet = [ Method=auto, Interface=wlp1s0, Address=<MAC>, MTU=1500 ]
	Service      wifi_<MAC_a>_<MAC_h>_managed_psk IPv4.Configuration = [ Method=dhcp ]

Để kết nối với AP (access point  - bộ phát wifi) có đặt mật khẩu, thì ta làm thêm 2 câu lệnh sau:

connmanctl> agent on
Agent registered
connmanctl> connect wifi_0cd2926de3ae_486f6d65574c414e_managed_psk
Agent RequestInput wifi_0cd2926de3ae_486f6d65574c414e_managed_psk
Passphrase = [ Type=psk, Requirement=mandatory ]

	Connected wifi_0cd2926de3ae_486f6d65574c414e_managed_psk
Passphrase? <passphrase goes here>

Ok, đến đây là bạn đã kết nối thành công đến mạng wifi nhà mình. Để kiểm tra IP, bạn gõ lệnh ifconfig và tìm tên mạng là wlp1s0 nhé.

Bây giờ bạn chỉ việc gỡ cổng LAN ra và kết nối bằng địa chỉ IP vừa nhận được thôi.

Tham khảo: https://software.intel.com/en-us/blogs/2014/04/25/wireless-galileo-on-yocto-linux-iot-devkit-image

 

lên
5 thành viên đã đánh giá bài viết này hữu ích.
Chuyên mục: 
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Điều khiển 8 đèn LED sáng theo ý muốn của bạn, dễ hay khó ?

Hôm nay, chúng ta sẽ học cách điều khiển 8 đèn LED. Vấn đề này, vừa dễ lại vừa khó, vậy nó dễ chỗ nào, khó chỗ nào, chúng ta cùng nhau tìm hiểu nhé!

Qua bài học này, bạn sẽ hiểu được cách làm thế nào để điều khiển nhiều led bằng cách sử dụng các chân digital, hoặc sử dụng IC HC595!

lên
122 thành viên đã đánh giá bài viết này hữu ích.

Hướng dẫn truyền thông Internet cho PLC bằng iNut Platform - Lập trình kéo thả Internet cho PLC

Điện tử công nghiệp thường chỉ tin tưởng và sử dụng các loại mạch PLC truyền thống vì khả năng đọc được ngược code, độ bền, tính ổn định (Đã được kiểm chứng theo thời gian). PLC đó là chuyên môn của các kỹ sư điện công nghiệp và gần như là kỹ năng bắt buộc phải có của mỗi người. Tuy nhiên, PLC có một điểm dỡ đó là: khó để lập trình kết nối Internet để quản lý (quan sát) từ xa. Phải biết thêm về WinCC (chi phí bản quyền cao) hoặc C# để làm phần mềm điều khiển trên máy tính. Điều đó không phải là dễ dàng đối với một kỹ sư điện tử công nghiệp. Vậy đâu là giải pháp? Đó chính là iNut Platform với dòng sản phẩm iNut - PLC Modbus RTU RS-485. iNut PLC sẽ giúp bạn đồng bộ các thanh ghi D trong PLC qua Internet một cách dễ dàng, an toàn và bảo mật. Cùng khám phá nhé!

lên
5 thành viên đã đánh giá bài viết này hữu ích.