前回はshairportの設定を行ったのですが、今回はネットワークの設定を行い、車で音楽を聞けるようにします♪
1. wifiの設定
まずはinterfacesファイルにwlan0を設定します。
$ vi /etc/network/interfaces
下記のもともとある部分はコメントにします。
#allow-hotplug wlan0 #iface wlan0 inet manual #wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf #iface default inet dhcp
下記を追加します。
auto wlan0 iface wlan0 inet static address 192.168.2.1 netmask 255.255.255.0 gateway 192.168.1.1
hostapdをインストールします。
$ apt-get install hostapd
※ここで私はものすごーーくはまったのですが、apt-getで入手できるhostapdのバージョンだとうまく動かないようです。(設定が悪いだけかもしれませんが。)ということで、hostapd2.0をダウンロードしてセットアップします。
必要なライブラリをインストールします。
$ cd ~
$ apt-get install gcc libnl-dev libssl-dev
hostapd2.0を入手してセットアップします。
$ wget http://w1.fi/releases/hostapd-2.0.tar.gz
$ tar xzf hostapd-2.0.tar.gz
$ cd hostapd-2.0/hostapd/
$ cp defconfig .config
下記のコマンドでdiffをとり、下記のようになるように修正します。
(+の箇所が修正後、-の箇所が修正前です)
$ diff -u defconfig .config
@@ -10,7 +10,7 @@ # to override previous values of the variables. # Driver interface for Host AP driver -CONFIG_DRIVER_HOSTAP=y +#CONFIG_DRIVER_HOSTAP=y # Driver interface for wired authenticator #CONFIG_DRIVER_WIRED=y @@ -103,9 +103,9 @@ #CONFIG_EAP_FAST=y # Wi-Fi Protected Setup (WPS) -#CONFIG_WPS=y +CONFIG_WPS=y # Enable WSC 2.0 support -#CONFIG_WPS2=y +CONFIG_WPS2=y # Enable UPnP support for external WPS Registrars #CONFIG_WPS_UPNP=y # Enable WPS support with NFC config method @@ -223,7 +223,7 @@ # This will save some in binary size and CPU use. However, this should only be # considered for builds that are known to be used on devices that meet the # requirements described above. -#CONFIG_NO_RANDOM_POOL=y +CONFIG_NO_RANDOM_POOL=y # Select TLS implementation # openssl = OpenSSL (default)
makeしてエラーがなければOKです。
$ make
hostapd.confを修正します。
もともと記載済みのものもあるので、検索しながら修正します。
$ vi ~/hostapd-2.0/hostapd/hostapd.conf
ctrl_interface=/var/run/hostapd ctrl_interface=/var/run/hostapd interface=wlan0 driver=nl80211 ssid=RPI country_code=JP hw_mode=g channel=11 wpa=2 wpa_passphrase=12345678 wpa_key_mgmt=WPA-PSK rsn_pairwise=CCMP eap_server=1 wps_state=2 uuid=87654321-9abc-def0-1234-56789abc0000 wps_pin_requests=/var/run/hostapd.pin-req device_name=Wireless AP manufacturer=Company model_name=WAP model_number=123 serial_number=12345 device_type=6-0050F204-1 os_version=01020300 config_methods=label virtual_display virtual_push_button keypad
※wpa_passphraseはパスワードなので適当に変更してください。
hostapdを2.0のバージョンのものに置き換えます。
$ mv /usr/sbin/hostapd{,.orig}
$ mv hostapd /usr/sbin/
hostapd.confの場所を指定します。
$ vi /etc/default/hostapd
DAEMON_CONF="/root/hostapd-2.0/hostapd/hostapd.conf"
これでアクセスポイントができあがりました。
2. DHCPとDNSの設定
dnsmasqを使って、DHCPとDNSの設定を行います。
dnsmasqをインストールします。
$ apt-get install dnsmasq
設定ファイルを修正します。
もともと記載済みのものもあるので、検索しながら修正します。
$ vi /etc/dnsmasq.conf
domain-needed bogus-priv local=/raspberry.local/ expand-hosts domain=raspberry.local dhcp-range=192.168.2.50,192.168.2.150,12h dhcp-option=option:router,192.168.2.0 dhcp-option=option:dns-server,192.168.2.1
再起動します。
$ reboot
これで、iPhone4sのwifi設定にRPIというのが表示されるはずです。
そこを選択するとパスワードを聞かれるので、wpa_passphraseで設定したパスワードを入力します。
AirPlayでAirPiが選択できて、スピーカーを繋いで音楽を流せば音が聴こえるはずです。
3. 車にセッティング
いよいよ車に持って行って音楽を聴いてみます♪
私の車には、AC電源とビデオ入力がついているので、そこから電源をとって、音声を入力させます。
黄色のケーブルは映像端子ですが、お試しです。(Raspberry Piのログイン画面がナビに表示されました。)白い線がAUXのケーブルです。
さて、エンジンをかけてRaspberry Piに電源が投入されます。
iPhoneとも無事wifi接続ができて、音楽が流れました。
少し音量が小さいのでカーオーディオのボリュームを上げます。
音の方は、さすがに高級なカーナビや音楽プレーヤには勝てないと思いますが、まずまずです。
走行しても聴けるのか?
しばしドライブしてみましたが問題なく聴けるようです。
4. 感想とか
目標達成ってことで、とりあえず大満足。
iPhoneから音楽を聴く時は有線で繋いでたのですが、やっぱり無線は楽チン♪
無線接続するまでに時間がかかって面倒かなとも思ってたのですが、意外に接続が早いので、気にならない。そうはいっても、北海道の冬の時期だと結露とかが心配なので、まだまだ家で遊んでみます。
家の中だとRaspberry Piの消費電力も少ないので常時起動でも問題ないですね。
技術的なところは、今回、簡単にできるだろーと甘く見てやってみたものの、実際やってみると色々はまって、これが勉強になりました。やっぱり手を動かして実際にやってみるってことが重要ですね!また、いいネタがあったらRaspberry Piで遊んでみます!
T.K