Raspberry Piで車載ミュージック ②

前回は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電源とビデオ入力がついているので、そこから電源をとって、音声を入力させます。

 k-ras-connect2_R

 

黄色のケーブルは映像端子ですが、お試しです。(Raspberry Piのログイン画面がナビに表示されました。)白い線がAUXのケーブルです。

 

さて、エンジンをかけてRaspberry Piに電源が投入されます。

iPhoneとも無事wifi接続ができて、音楽が流れました。

少し音量が小さいのでカーオーディオのボリュームを上げます。

 

音の方は、さすがに高級なカーナビや音楽プレーヤには勝てないと思いますが、まずまずです。

走行しても聴けるのか?

しばしドライブしてみましたが問題なく聴けるようです。

 

4. 感想とか

目標達成ってことで、とりあえず大満足。

iPhoneから音楽を聴く時は有線で繋いでたのですが、やっぱり無線は楽チン♪

無線接続するまでに時間がかかって面倒かなとも思ってたのですが、意外に接続が早いので、気にならない。そうはいっても、北海道の冬の時期だと結露とかが心配なので、まだまだ家で遊んでみます。

 

家の中だとRaspberry Piの消費電力も少ないので常時起動でも問題ないですね。

 

技術的なところは、今回、簡単にできるだろーと甘く見てやってみたものの、実際やってみると色々はまって、これが勉強になりました。やっぱり手を動かして実際にやってみるってことが重要ですね!また、いいネタがあったらRaspberry Piで遊んでみます!

 

T.K