東北Tech道場/第3期郡山道場にあたり、AndroidThingsをRaspberryPiにセットアップした作業の記録です。
初期設定の操作には、他のページなどで紹介されている一般的な手順の「有線LAN」と「USBキーボード」を使いません。そのかわり「USBシリアル変換ケーブル」が必要です。
また、ディスプレイには「RaspberryPi 7インチ公式タッチディスプレイ」が使用できることを確認できました。
#準備
##使用した機材
- RaspberryPi3
- RaspberryPi 7インチ公式タッチディスプレイ
- 16G SDメモリカード
- USBシリアル変換ケーブル
- ノートPC Windows10/64bit
##ダウンロードしたファイル
##使用した補助ソフト
- [DD for Windows ディスクイメージ書き込み用]
(http://www.si-linux.co.jp/techinfo/index.php?DD%20for%20Windows) - TeraTerm コンソール接続用
WindowsPCにAndroid Studioをインストール
ダウンロードした「android-studio-bundle-162.3934792-windows.exe」を実行するだけ。
すべてデフォルト。詳しくは覚えていない。
SDメモリにAndroidThingsのディスクイメージを書き込む
参考にした公式ガイドでは、「Etcher」や「Win32DiskImager」というものを使うように書いてありましたが、手元のPCに「[DD for Windows]
(http://www.si-linux.co.jp/techinfo/index.php?DD%20for%20Windows)」が入っていたのでこれを使用してSDメモリカードに書き込みました。
- ダウンロードした「androidthings_rpi3_devpreview_4.zip」を解凍する。解凍後のイメージファイル「iot_rpi3.img」は4Gバイト以上あるので注意。
- SDメモリカードをフォーマットする
- DD for Windowsを右クリックメニューの「管理者として実行」で起動する
- ドライブを選択。
- 解凍後のイメージファイル「iot_rpi3.img」を選択。ファイルの種類は「All files」にしないとimgファイルが選べない。
- 「書込」ボタンを押す。かなり時間がかかります。
#RaspberryPi3で起動
- AndroidThingsのイメージを書き込んだSDメモリカードをRaspberryPi3にセットする。
- 電源アダプタを接続する
以上で、すんなりタッチパネルディスプレイに起動画面が表示されました・・・・
しかーし!!なんと表示が上下逆さまです!!
またLANにもつながっていないので何もできません。
いくつか設定を施します。
#ディスプレイの上下逆さま現象に対処
この作業は普通の外付けディスプレイをHDMIで接続している場合は不要です。そもそも用途によってはディスプレイ自体が不要です。
この記事を参考に作業。
- いったんSDメモリカードをRaspberryPi3から抜き、WindowsPCに刺し直す。
- SDメモリカードのルートにあるconfig.txtを開く
- ファイルの最後に「
lcd_rotate=2
」の一行を追加して保存 - RaspberryPiにセットして起動。今度はちゃんと正しく表示されました。
#USBシリアル変換ケーブルによるコンソール接続
RaspberryPiはUSBデバイスとして動作しないためUSBケーブル接続ではアプリ開発できないそうです。そこで有線または無線LANに接続する必要があります。
公式ガイドでは最初に有線LANに接続して無線LANの設定をするという2段階の作業になっていますが、手元にUSBシリアル変換ケーブルがあったので、有線LANもUSBキーボードも使わず、WindowsPCからシリアルコンソール経由で設定しました。
-
PCでTeraTermを起動する。シリアルポートを開き、通信設定は「ボーレート:115200bps、データ:8bit、パリティ:none、ストップ:1bit」とする。
-
RaspberryPi3を起動するとTeraTermの画面にコンソールが表示される。
#無線LANの設定
接続する無線LANのSSIDとパスコードを確認しておく。
コンソールに下記のコマンドを入力する。
am startservice \
-n com.google.wifisetup/.WifiSetupService \
-a WifiSetupService.Connect \
-e ssid <Network_SSID> \
-e passphrase <Network_Passcode>
<Network_SSID>と<Network_Passcode>の部分に、それぞれ無線LANのSSIDとパスコードを入力する。
打ち間違いの修正や確認をしやすいように、私は上のコマンドをいったんテキストエディタに入力して編集し、これをコンソールにコピー&ペーストしました。
無線LANの接続が完了するとディスプレイにSSIDやIPアドレスが表示されます。
下記のコマンドで、WiFiインターフェースにIPアドレス等が設定されていることや、pingが通ることなどネットワークの疎通を確認します。
ifconfig
ping <ルータのアドレスなど>
以上、無線LANに接続した状態でAndroidThingsを起動することができました。
#注意
忘れがちですが、RaspberryPiの電源を切る時はいきなり電源アダプタを抜いてはいけません。SDメモリカードの内容が破損する恐れがあります。
コンソールで下記のコマンドを入力してから、電源を切断します。
reboot -p
#おしまい
Androidそのものの開発をしたことがないので、この後何をどうしたらいいのかわかりません。Tech道場でそこら辺を探りつつ、何に使おうか考えたいと思います。