今日も生きる

いろいろな闘いを描くブログ。ここで発信する内容はあくまで私個人の意見であり、現在所属する会社の公式見解を示すものではありません。

ROS Indigoを使うがためにRaspberryPi3に「Ubuntu 14.04」をインストールし、WiFiまで使えるようにする方法

まえがき

ROS Indigoを使うがためだけに、RaspberryPi3に「Ubuntu 14.04」を入れたい。

既報として、RaspberryPi3にUbuntu 14.04とROS indigoをインストール | RT MicroMouseにて、OS及び、ROSのインストール方法が整備されているのでこれに従いインストール。

この方法でRaspberryPi3でUbuntu14.04環境は手に入れることが出来るのだが、RaspberryPi3の売りの一つであるWiFiが使えない!!!!!!(少なくとも僕が試した内では。。。)

いろいろ試行錯誤の末、なんとかWiFiが動かせるようになったのでその手順をメモ。

(なお、特にROS Indigoにこだわりが無ければ、「Ubuntu Mate 16.04」のイメージが公開されているのでそれを使うのがいいと思う。) ubuntu-mate


前手順

RaspberryPi3にUbuntu 14.04とROS indigoをインストール | RT MicroMouseに従い、OSインストール。(ROSはまだインストールしない。)

WiFi接続に必要なファームウェアをインストール

sudo apt-get install linux-firmware wireless-tools wpasupplicant

RaspberryPi3用ファームウェアの用意

今回最大の肝。RaspberryPi3のWiFiの利用には、pi 3 - Configure WLAN for RaspberryPI3 using image created with Yocto - Raspberry Pi Stack Exchangeあたりを見ていると、linux-firmware-brcm43430が必要らしいということが分かる。Ubuntu14.04のリポジトリからsudo apt-get linux-firmwareしても上記のファームは入らないようである。 なので、とりあえず今回は、次のファームを「Ubuntu Mate 16.04」から引っこ抜いた。引っこ抜いたファームを、/lib/firmware/brcm/へとコピーする。(ダウンロードはぱっと探した感じ見つからない。) * brcmfmac43430-sdio.bin * brcmfmac43430-sdio.txt

cp brcmfmac43430-sdio.bin /lib/firmware/brcm/
cp brcmfmac43430-sdio.txt /lib/firmware/brcm/

WiFiの設定

sudo vi /etc/network/interfaces
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
  • アクセスポイントの設定。
sudo wpa_passphrase {SSID} {PASS} > sudo tee -a /etc/wpa_supplicant/wpa_supplicant.conf
sudo ifup wlan0
  • 遅くならないように、wlan0の設定を変更。
sudo vi /etc/rc.local
iwconfig wlan0 power off

所感

とりあえず、WiFiは動くようになった。Bluetoothに関してはかなり難易度が高い模様。(挫折) Bluetoothが動く方法があれば教えてください。