ubuntu環境
Linux実験環境としてUbuntuを使うことにする。環境構築に使用するホストPC側はUbuntu 16.04。
まずは、SDカードを作成する。以下のページを参考にする。
BeagleBoardUbuntu - eLinux.org
ダウンロードして、解凍する。
wget https://rcn-ee.com/rootfs/2018-03-09/elinux/ubuntu-16.04.4-console-armhf-2018-03-09.tar.xz
tar ubuntu-16.04.4-console-armhf-2018-03-09.tar.xz
SDカードリーダにSDを挿入して、ホストPCと接続する。
ホストPCからSDカードは/dev/sdbとして認識された。
解凍してできたフォルダの中に、スクリプトが入っている。それを実行する。
cd ubuntu-16.04.4-console-armhf-2018-03-09
sudo ./setup_sdcard.sh --mmc /dev/sdb --dtb beaglebone
しばらくすると、
setup_sdcard.sh script complete
と表示され、処理が完了する。
作成されたSDカードをBeagleBoneBlackに挿入し、電源を投入するとUbuntuが起動する。
起動時に、ネットワークをチェックするので、スタンドアロンで動作させる場合にはネットワークを無効にする。
sudo systemctl disable networking.service
なお、LinuxPCでシリアルコンソールを接続する場合にはscreenコマンドを使う。
sudo screen /dev/ttyUSB0 115200
/dev/ttyUSB0がデバイスファイル、115200がボーレート
カーネルパラメータ
カーネルパラメータをカーネルコンフィグで指定していたのに、デバイスツリーに追加したところ、そちらが優先された。
調べると、どうもそうらしい。
A Tutorial on the Device Tree (Zynq) -- Part II | xillybus.com
here are three sources for the kernel boot command line in general:
- Those given as CONFIG_CMDLINE in the kernel configuration
- Those passed on by the boot loader (typically U-boot on ARM processors, LILO or GRUB on x86)
- Those included in the device tree, under chosen/bootargs (see listing above)
Which one is used depends on kernel configuration parameters. In Xillinux, the device tree’s chosen/bootargs is used.
知ってるようで知らないデバイスツリー。
このサイトも詳しい解説がある
Device Tree Usage - eLinux.org
SDカードブート
eMMCでの起動は確認できたところで、SDカードブートを試してみる。
SDカードに書き込むイメージは、公式サイトの最新のイメージを使う。
https://beagleboard.org/latest-images
この中から、 Debian 9.3 2018-01-28 4GB SD LXQT をダウンロードする。
ダウンロードしたイメージをSDカードに書き込むには、Win32DiskImagerを使う。
使い方は、以下のサイトが詳しい。
基本的には、イメージを選んで書き込むだけ。
SDカードは、一つのパーティションで作成される。
SDカードのイメージを書き込んだら、BeagleBoneBlackにSDカードを入れて起動する。新しいカーネルで起動すればOK。
動作確認
BeagleBoneBlackの箱を開けて、まずは動作確認を行う。
WindowsPCとBeagleBoneBlackをUSB-シリアルで接続する。
USB-シリアルはTTL-232R-3V3を使う。
BeagleBoneBlack側の接続は、J1コネクタを使用して、電源側の1ピン(ACジャック側)がGNDなので黒い線を繋ぐようにする。こんな感じ↓
USBはWindonws側に接続し、TeraTermの設定で起動する。
- ボーレート:115200
- データ:8ビット
- パリティ:なし
- ストップビット:1ビット
- フロー制御:なし
この状態で電源を供給すると、eMMCに書き込まれたLinuxが起動する。
(文字化けする場合には再接続して、リセットするとOK)
起動後
Beagle Bone Black購入
Linuxの勉強用にBeagle Bone Blackを購入。
ラズベリーパイも考慮に入れたけど、JTAGコネクタがないらしいので却下。
【購入品】
- BeagleBone Black (Element14製): マイコン関連 秋月電子通商 電子部品 ネット通販
-
超小型スイッチングACアダプター5V2A 入力100V〜240V GF12−US0520: 電源一般 秋月電子通商 電子部品 ネット通販
- マイクロSDカード
- HDMIーDVIケーブル
BeagleBoneBlack(以下BBB)のHDMI端子はマイクロなので要注意。
HDMIーDVIケーブルはモニタにDVI端子までしかなかったため。通常はHDMIケーブルでOK。
参考にした本はこれ。
LinuxガジェットBeagleBone BlackでI/O: ハードウェア制御の大本命! (インターフェースSPECIAL)
- 作者: インターフェース編集部
- 出版社/メーカー: CQ出版
- 発売日: 2014/07/10
- メディア: 単行本
- この商品を含むブログを見る
HDMIモニタほしい。