BeagleBone Black のハードウェアハック(1) Hacking BeagleBone Black, part 1
1. はじめに
BeagleBone Black(BBB)はARMをベースにした小型Linuxサーバです。教育用にブレーク中のRasPiと類似しています。
RasPiに比べて性能が高く、拡張用に使えるピン数が多いといった特徴がありますが、日本語の情報が少ないようです。
BBBに関する情報共有のため、ハックの記録を書いてみたいと思います。
2. 何に使うか?
BBBはネットワークコントローラを内蔵しているため、ネットワーク経由でアクセス可能なデバイス作成等の応用が可能です。またArduinoに比べてCPUもそれなりに強力なので、ソフトウェアシンセや画像処理など演算処理を伴う装置にも好適です。
ここでは、以下の2つの使い方を目指します。
・気象観測ステーション(取り付けたセンサをネットワーク経由で確認できる装置)
・MIDIシーケンサ(詳細未定)
3. Angstrorm Linuxを使う
BBBの内蔵フラッシュメモリに導入済のAngstrom Linuxは、組み込み用のLinuxディストリビューションです。
他にSDカードを使ってUbuntuなどのメジャーなディストリビューションも選択可能です。(なかにはNetBSDを移植している人も居る様です。。。)
新鮮さがないのと勉強のためコンパクトなAngstromを使うことにしました。
3.1 OSのインストール
ともあれ、Angstrom Linux を使うために、OSのインストールから開始しました。
(1) まずは最新のベースイメージをインストールします。
BBB出荷時に内蔵フラッシュメモリにはAngstrom Linuxが既にインストールされています。このまま使っても良いのですが、最新版OSをインストールしました。
詳細手順は、Adadruitのチュートリアルを参考にしました。
http://learn.adafruit.com/beaglebone-black-installing-operating-systems
手順は次の通りです。
- ホスト(MacOSX)へのイメージのダウンロード
- 内蔵フラッシュメモリの書き換え作業用のマイクロSDカード作成
- BBBの内蔵フラッシュメモリへの書き込み
最新イメージは次の場所にあります。
http://beagleboard.org/latest-images/
使ったパッケージは2013/09のバージョンです。「BBB-eMMC-flasher-2013.09.04.img.xz」圧縮された状態で370MB程度です。
内蔵フラッシュメモリの書き換えには1時間程度かかりました。
(2) 続いてパッケージのアップデート&アップグレードをします。
BBBにネットワークを接続し、ホストからリモートログインします。BBBはDHCPを使ってIPアドレスを取得しているはずですので、DHCPサーバ等からアドレスを調べて下さい。
ログインできたら、rootユーザでパッケージシステムを使ってアップデートします。
(BeagleBone Black上で) # opkg update # opkg upgrade
ファイルのダウンロードとインストールに数時間かかります。
3.2 Emacsの導入
エディタが無いと始まらないのでとりあえずEmacsを入れました。
(BeagleBone Black上で) # opkg install emacs
もとからnanoというエディタが入っているので、それでも良いと思います。
3.3 sshでのリモートログイン
なぜか、コンソールでEmacsが正常動作しませんでした。回避策として、X Windows版のEmacsを使います。
sshでのログイン時に -Xオプションを付けることで、ホスト側のXサーバにリモート表示されます。
(ホスト上で) mac% ssh -X -l user 192.168.0.16
(続く)