USB無線LAN(GW-450D PLANEX)のインストール(Raspberry Pi) 2

更新日2021-04-21 (水) 09:50:17

インストールする Kernelバージョン

Kernelの手順確認も兼ねて再度インストール Raspberry Piはカーネルが4.14〜4.19系か、4.1〜4.9系に対応に対応しているようなので以下をインストール

jessieのバー上ンでraspbian-2017-06-23,raspbian-2017-07-05はSD作成ライターで
「Input file is not valid disk image. ....」
というエラーでSDが作成できなかったので以下を使用した。
その後Updateして無線LANをインストールする。

ちなみに以降の「stretch」以降は無線LANドライバで固定IPの設定がうまくいかなかった。→原因不明
dhcpではOKだった。よって「jessie」でインストールを行う。

  • インストールイメージ

raspbian-2017-03-03
2017-03-02-raspbian-jessie.zip

Download先

事前設定

  • 日付合わせ
$sudo date --set='2021/04/19 10:24'

パッケージのアップデートを行う

(インストール時バージョン)

$ uname -a
Linux raspberrypi 4.4.50-v7+ #970 SMP Mon Feb 20 19:18:29 GMT 2017 armv7l 
GNU/Linux
$ sudo apt-get update
$ sudo apt-get dist-upgrade
$ sudo reboot

注)(sudo rpi-update ←実行しない ファームウェアとOSのアップグレードのようだ.しかも未推奨のようだ)

  • アップデート後バージョンを確認
# uname -a
Linux raspberrypi 4.9.35-v7+ #1014 SMP Fri Jun 30 14:47:43 BST 2017 armv7l GNU/Linux

ドライバのビルドに必要なkernel-headersをインストール

# apt-get install raspberrypi-kernel-headers
  • インストール後リンクを張る
# cd /usr/src
# ln -s linux-headers-4.9.35-v7+ linux

ドライバのダウンロード

以下から「gw-450d_driver_linux_v3002.zip」をダウンロードして、~pi/Downlaod/に保存する

# cd /usr/src
# unzip ~pi/Downloads/gw-450d_driver_linux_v3002.zip
# cd gw-450d_driver_linux_v3002
# tar xvf mt7610u_wifi_sta_v3002_dpo_20130916.tar.bz2
# cd mt7610u_wifi_sta_v3002_dpo_20130916

パッチをDLする

  • kernel 4.14〜4.19系

パッチファイルはgw-450d-rpi-kernel414.patch

# wget https://raw.githubusercontent.com/neuralassembly/raspi/master/gw-450d/gw-450d-rpi-kernel414.patch
# patch -p0 < gw-450d-rpi-kernel414.patch

  • kernel 4.1〜4.9系(今回はこちら)

Kernel 4.9.35のパッチファイルはgw-450d-rpi-kernel41.patch

# wget https://raw.githubusercontent.com/neuralassembly/raspi/master/gw-450d/gw-450d-rpi-kernel41.patch

パッチの適用

# patch -p0 < gw-450d-rpi-kernel41.patch
patching file common/rtusb_dev_id.c
patching file include/os/rt_linux.h
patching file os/linux/config.mk
patching file os/linux/rt_linux.c
patching file sta/sta_cfg.c
patching file common/cmm_info.c
patching file os/linux/config.mk

コンパイル

# pwd
/usr/src/gw-450d_driver_linux_v3002/mt7610u_wifi_sta_v3002_dpo_20130916
# make

注)そのままmakeすると以下のようなエラーが出た場合(2017-03-02-raspbian-jessie.zipはこのエラーが出た)は以下の対応

cc1: error: -Werror=incompatible-pointer-types: no option -Wincompatible-pointer-types
  • 対策

/usr/src/gw-450d_driver_linux_v3002/mt7610u_wifi_sta_v3002_dpo_20130916/os/linux/config.mkの

WFLAGS := -g -DAGGREGATION_SUPPORT -DPIGGYBACK_SUPPORT -DWMM_SUPPORT -DLINUX -Wall -Wstrict-prototypes -Wno-trigraphs -Wno-error=incompatible-pointer-types

「-Wno-error=incompatible-pointer-types」部を削除

変更後

WFLAGS := -g -DAGGREGATION_SUPPORT -DPIGGYBACK_SUPPORT -DWMM_SUPPORT -DLINUX -Wall -Wstrict-prototypes -Wno-trigraph

(注の内容ここまで)


# make
  • make後の作業
# cp -p os/linux/mt7650u_sta.ko /lib/modules/4.9.35-v7+/kernel/drivers/net/wireless/
# depmod -a

設定ファイルのコピー

# mkdir -p /etc/Wireless/RT2870STA
# cp RT2870STA.dat /etc/Wireless/RT2870STA/RT2870STA.dat

無線LANの設定

  • /etc/modules
i2c-dev
mt7650u_sta  ←追加
  • /etc/Wireless/RT2870STA/RT2870STA.dat
CountryCode=
ChannelGeography=1
SSID=   ←(空白)
NetworkType=Infra
WirelessMode=5
(略)
WmmCapable=1
AckPolicy=0;0;0;0
AuthMode=WPA2PSK	←追加
EncrypType=AES		←追加
AuthMode=OPEN
EncrypType=NONE
  • /etc/wpa_supplicant/wpa_supplicant.conf
country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

(以下を追加)
network={
        ssid="SSID"
        proto=WPA2
        key_mgmt=WPA-PSK
        psk="*******"
        scan_ssid=1	 ←ステルスAPの時に指定

}
  • パスフェーズの作成のとき
$ wpa_passphrase SSID (パスフェーズ)
network={
        ssid="SSID"
        #psk="(パスフェーズ)"
        psk=64*************************************************a
}

pskを「wpa_supplicant.conf」の内容と変更する

  • /etc/network/interfaces
# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d

allow-hotplug wlan1
iface wlan1 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

(以下を末尾に追加)

auto ra0	 ←OS起動時自動に起動
iface ra0 inet dhcp	 ← dhcp指定時は「iface ra0 inet dhcp」を指定
				IP固定は「iface ra0 inet manual」を指定
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp	

/etc/dhcpcd.confはDHCPの時は変更不要

再起動

GW-450をUSBに挿入して再起動

$ ifconfig
(略)
ra0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.214  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::222:cfff:feed:1145  prefixlen 64  scopeid 0x20<link>
        ether 00:22:cf:ed:11:45  txqueuelen 1000  (イーサネット)
        RX packets 3910  bytes 843566 (823.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 178  bytes 21857 (21.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

IPアドレスを固定に

  • /etc/dhcpcd.conf
# A hook script is provided to lookup the hostname if not set by the DHCP
# server, but it should not be run by default.
nohook lookup-hostname

interface ra0
static ip_address=192.168.0.125/24
static routers=192.168.0.243
static domain_name_servers=192.168.0.243
  • /etc/network/interfaces
auto ra0
iface ra0 inet manual ← ここをdhcp→manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp
  • 再起動

参考


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-04-21 (水) 09:50:17 (159d)