Lambdaカクテル

ウェブアプリケーションエンジニアです.玉石混淆です.

Raspberry Pi 2買ったからUSBメモリから起動させた

飛行機のラジコンを作りたくなったのでRaspberry Piで制御すればよいと考えた。そういうわけでRaspberry PiとXi対応3G通信端末のL-02C、そしてジャイロセンサモジュールを買った。

ポストにギリギリの箱がつめこまれていた。 f:id:Windymelt:20150514161825j:plain

ラズパイとジャイロセンサとスペーサはスイッチサイエンスで購入(ステマ)。無理くりポストに入れたのか、箱がひしゃげているような…

f:id:Windymelt:20150514162030j:plain

スペーサのネジが入らないトラブル。

f:id:Windymelt:20150514162827j:plain

プラスチック用穴空けドリルで削ったら入った。

f:id:Windymelt:20150514164042j:plain

IIJmioのSIMで動かすつもりのL-02C。ヤフオクで落札。小柄な筐体でLinuxでの動作報告が多く、ハード・ソフト面ともに扱いやすそうなこと、そしてLTE通信できるのが決め手となった。ちょっと平べったいからポートに干渉するのと、バッテリーが無いので電力を別に確保する必要性があるかもしれないのが欠点。

f:id:Windymelt:20150514174722j:plain

f:id:Windymelt:20150514174804j:plain

なぜか自宅に三軸加速度センサとか気圧センサとか温度センサとかが落ちていたのでこれも活用。

f:id:Windymelt:20150515170947j:plain

まだリボンケーブルやブレッドボード用のケーブルが無いのでI2Cなどの周辺機器では遊んでいないが、IPv6SSH接続ができた。

手許に大容量のmicroSDカードが無かったのでUSBメモリと小容量のmicroSDを併用して起動させた。手順は以下の通り。

  1. Raspbianのイメージをddで8GiBくらい*1USBメモリに書き込む*2
  2. microSDのパーティションテーブルをMBR方式で初期化し、20MiB程度のFAT32パーティションを作成する(/bootパーティションはその程度しか必要としない)
  3. 作成したFAT32パーティションbootと名付ける*3
  4. bootパーティションUSBメモリ内の/boot/以下のファイルをコピーする
  5. USBメモリパーティション/パーティションとして扱うために、microSD内のconfig.txtを開き、root=/dev/sda1と変更する
  6. microSDカードとUSBメモリをRaspberry Piに装着して起動させる

めでたしめでたし。

*1:OS自体は3.3GiBくらい

*2:当然USBメモリの中のデータは死ぬ

*3:試していないが、この手順は不要かもしれない