Raspberry Pi ZEROでGW-450D2(無線LANドングル)を使う
ZERO買っちゃった
Pimoroniで入荷しているのを見たのでRaspberry Pi ZEROを買ってしまいました。
5ドルで買えるコンピューターという触れ込みでしたが、単品は品切れで小物とのセットで24ユーロでした。
めちゃくちゃ小さいです。フリスクの箱にギリギリ入るとか入らないとか
ネットに繋ぐ
LANが内蔵されていないのでUSBのWifiドングルでネットに接続します。
どうせやるなら11acで接続したいということでPLANEXのGW-450D2を購入。
しかしUSBポートが1個しかない&有線LANが内蔵されていないのでハブとコネクタも購入。
まずは有線LANのみで設定を行います。
Raspbian Jessieをインストールする
セットでついてきたSDカードに入っているOSが古くて動かなかったので再インストール。
WindowsマシンでOSイメージをSDカードへ書き込みました。詳しくは参考サイトへ
ドライバのインストール
無線LANドングルのドライバをソースからコンパイルします。
準備
/etc/apt/sources.list を下記に書き換え
deb http://mirrordirector.raspbian.org/raspbian/ wheezy main contrib non-free rpi deb http://mirrordirector.raspbian.org/raspbian/ jessie main contrib non-free rpi
/etc/apt/preferences を新規作成
Package: * Pin: release n=wheezy Pin-Priority: 900 Package: * Pin: release n=jessie Pin-Priority: 300 Package: * Pin: release o=Raspbian Pin-Priority: -10
apt更新
sudo apt-get update sudo apt-get upgrade
必要そうなビルドツールをインストール
sudo apt-get install autoconf libtool automake build-essential git bc -y
ドライバのコンパイル
基本的には参考サイトのコピペでOK。
カーネルのダウンロード辺りが上手くいかなかったので後述。
ncurses-devとgcc-4.8のインストール。
sudo apt-get install ncurses-dev -yq -t jessie sudo apt-get install gcc-4.8 -yq -t jessie
gcc-4.8の優先度を変更。
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 20 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 60
gccのバージョンを確認。
gcc --version | head -n 1 gcc (Raspbian 4.8.4-1) 4.8.4
MT7610U USB – MediaTekのソースをダウンロードし展開。
wget http://cdn-cw.mediatek.com/Downloads/linux/mt7610u_wifi_sta_v3002_dpo_20130916.tar.bz2 tar jxf mt7610u_wifi_sta_v3002_dpo_20130916.tar.bz2
修正パッチが用意されているので借用。
git clone https://gist.github.com/moutend/cb35a37297910c99d3e2 gist ./gist/patch.sh patching file /home/pi/mt7610u_wifi_sta_v3002_dpo_20130916/os/linux/rt_linux.c patching file /home/pi/mt7610u_wifi_sta_v3002_dpo_20130916/os/linux/config.mk patching file /home/pi/mt7610u_wifi_sta_v3002_dpo_20130916/include/os/rt_linux.h patching file /home/pi/mt7610u_wifi_sta_v3002_dpo_20130916/conf/RT2870STA.dat patching file /home/pi/mt7610u_wifi_sta_v3002_dpo_20130916/common/rtusb_dev_id.c Successfully done.
カーネルのダウンロード
参考サイトのやり方では上手く行かなかったので、rpi-sourceを使用。
sudo wget https://raw.githubusercontent.com/notro/rpi-source/master/rpi-source -O /usr/bin/rpi-source && sudo chmod +x /usr/bin/rpi-source && /usr/bin/rpi-source -q --tag-update rpi-source
ドライバのビルド
ようやくビルド。
かなり時間がかかるので待ちます。
cd ./mt7610u_wifi_sta_v3002_dpo_20130916/ sudo make sudo make install
ビルドが完了したらドライバの読み込み。
4.1.13+の部分はカーネルのバージョンによります。
sudo insmod /lib/modules/4.1.13+/kernel/drivers/net/wireless/mt7650u_sta.ko
読み込みが終わったらチャンネルをスキャンして動作確認
sudo iwlist ra0 scan | grep GHz | sed 's/^ *//' Frequency:2.412 GHz (Channel 1) Frequency:2.442 GHz (Channel 7) Frequency:2.462 GHz (Channel 11) Frequency:5.18 GHz (Channel 36) Frequency:5.58 GHz (Channel 116)
Wi-fi設定
無線の接続とIPアドレスを固定する
Jessieからお作法が変わっているらしく、少し戸惑った。
/etc/network/interfaces を修正
auto lo iface lo inet loopback iface eth0 inet dhcp auto ra0 allow-hotplug ra0 iface ra0 inet manual pre-up sh -c "sleep 5" wpa-roam /etc/wpa_supplicant/ra0.conf iface default inet dhcp
/etc/dhcpcd.conf に追記
静的アドレスの設定もここに書くらしい。
interface ra0 static ip_address=192.168.1.90/24 #自分のIPアドレス static routers=192.168.1.1 #デフォルトゲートウェイ static domain_name_servers=192.168.1.1 #DNS
Wi-fiの接続設定
/etc/wpa_supplicant/ra0.conf を新規作成する
wpa_passphrase SSID PATHPHRASE | grep -v '#.*$' | sudo tee -a /etc/wpa_supplicant/ra0.conf
作成できたか確認
sudo cat /etc/wpa_supplicant/ra0.conf network={ ssid="SSID" psk=5d88239ed5d1203ddf3a6b30243ee1c95244392d50f62e0b26265628c4bd42ff }
再起動
sudo reboot
再起動が終わったら有線を外してip確認
ifconfig lo Link encap:ローカルループバック inetアドレス:127.0.0.1 マスク:255.0.0.0 inet6アドレス: ::1/128 範囲:ホスト UP LOOPBACK RUNNING MTU:65536 メトリック:1 RXパケット:0 エラー:0 損失:0 オーバラン:0 フレーム:0 TXパケット:0 エラー:0 損失:0 オーバラン:0 キャリア:0 衝突(Collisions):0 TXキュー長:0 RXバイト:0 (0.0 B) TXバイト:0 (0.0 B) ra0 Link encap:イーサネット ハードウェアアドレス 00:22:cf:f6:2c:f2 inetアドレス:192.168.1.90 ブロードキャスト:192.168.1.255 マスク:255.255.255.0 inet6アドレス: fe80::222:cfff:fef6:2cf2/64 範囲:リンク inet6アドレス: 2001:a43d:2133:0:67d0:5c02:4b0:3788/64 範囲:グローバル UP BROADCAST RUNNING MULTICAST MTU:1500 メトリック:1 RXパケット:54661 エラー:0 損失:7 オーバラン:0 フレーム:0 TXパケット:5074 エラー:0 損失:0 オーバラン:0 キャリア:0 衝突(Collisions):0 TXキュー長:1000 RXバイト:26052075 (24.8 MiB) TXバイト:488880 (477.4 KiB)
無線の接続状況を確認
iwconfig ra0 ra0 Ralink STA ESSID:"SSID" Nickname:"MT7610U_STA" Mode:Managed Frequency=5.18 GHz Access Point: A4:12:42:68:67:33 Bit Rate=135 Mb/s RTS thr:off Fragment thr:off Link Quality=100/100 Signal level:-56 dBm Noise level:-84 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0
何とか無線でインターネットに接続できるようになりました。
疲れた・・・
関連記事
-
プラ舟はじめました
プラ船買っちゃった 金魚にだだハマりなGW ついにプラ船買ってガレージに設置して …
-
Raspberry Pi2で外部から水槽のLEDを点灯する その2
前回でひとまずさくらVPS上のPHPから自宅水槽のLED照明をONにできるように …
-
RaspberryPi2を使ったリモートのエサやりボタン復活しました
春がきた 春になり水温が上がってきたのでプラ舟ページのエサやりボタンを復活させま …
-
エサやりボタンを撤去しました
寒い! 寒くなってきましね。 水温を10度を切り始めたので、プラ舟ページに配置し …
-
Raspberry Pi ZERO + L-03D + IIJmioを使ってネットに接続する
野外のソーラーパネル&ラズパイからネットに繋ぎたい ソーラーパネルで給 …
-
みんなのラズパイコンテストにて受賞しました
ラズパイマガジンと日経Linux、日経ソフトウエア様の みんなのラズパイコンテス …
-
エサやりボタン復活しました
遠隔エサやりボタン 春になってきたので冬の間ストップしていたエサやりボタンを復活 …
-
Raspberry Pi2で外部から水槽のLEDを点灯する
外部からネット越しに金魚水槽のLEDを点灯させたい WebIOPiというライブラ …
-
ベランダ水槽の配信ページを追加しました
配信ページ追加 先日ベランダに引っ越した穂竜たちの配信ページを追加しました。 ベ …
-
RaspberryPi2で動画配信しながら写真も撮りたい
金魚デカくなった? 金魚にエサやってると4月の初頭から飼い始めた琉金が1周り大き …
- PREV
- エサやりボタンを撤去しました
- NEXT
- 穂竜水槽を引っ越しました
Comment
[…] ・Raspberry Pi ZEROでGW-450D2(無線LANドングル)を使う ・Automatically connect a Raspberry Pi to a Wifi […]