LoginSignup
0
0

More than 5 years have passed since last update.

BeagleBone Blackのファームウェアを入れ直す - Part1: Debian 7.5とWindows7作業環境

Last updated at Posted at 2015-01-31

私のBeagleBone BlackのリビジョンはA5Bと古いのでeMMCが2GBしかありません。現在のファームウェアはUbuntu 13.04を使っているのですが、別の環境でSDカードに焼いた14.04が起動してくれません。一度ファームウェアをオフィシャルのDebianに戻してビルド環境を用意しようと思います。

Cygwinとapt-cygの用意

今回は作業環境にWindows7を使います。まずCygwinのセットアップのためsetup-x86_64.exeをダウンロードしてインストールします。パッケージ管理ツールのapt-cygに必要なパッケージをインストールしておきます。

  • Devel/git-svn
  • Base/gawk
  • Utils/bzip2
  • Utils/tar
  • Web/wget

Cygwin64 Terminalを管理者として起動してapt-cygをインストールします。

$ svn --force export http://apt-cyg.googlecode.com/svn/trunk/ /bin/
A    /bin
A    /bin/LICENSE
A    /bin/apt-cyg
A    /bin/README.md
リビジョン 34 をエクスポートしました。
$ chmod +x /bin/apt-cyg

バージョンを確認します。

$ cygcheck -c cygwin
Cygwin Package Information
Package              Version        Status
cygwin               1.7.28-2       OK
$ apt-cyg --version
apt-cyg version 0.59
Written by Stephen Jungels

Copyright (c) 2005-9 Stephen Jungels.  Released under the GPL.

apt-cygを使いunxzコマンドをインストールします。xz形式のイメージファイルの解凍に使います。

$ apt-cyg install xz-utils

Debian 7.5のインストール

Windows7にUSBドライバをインストールする

WindowsからUSB経由でBBBにSSH接続するため、Getting Startedにある64-bit版ドライバのインストーラーをダウンロードして実行します。

device-drive-installed.png

microSDカードをフォーマットする

Debianのイメージを焼くため余っていた16GBのmicroSDカードを用意しました。SD Formatterを使いmicroSDカードをフォーマットし直します。論理サイズ調整をONにしてクイックフォーマットします。

sdformatter.png

フォーマットが終了しました。

sdformatter-finish.png

microSDカードにイメージを焼く

Cygwinを使いDebianのイメージをSDカードに焼きます。Cygwin64 TerminalからWindows7のデバイスファイルを確認します。16GBのmicroSDカードは/dev/sdcになります。

$ cat /proc/partitions
major minor  #blocks  name

    8     0 488384323 sda
    8     1     40131 sda1
    8     2  17598464 sda2
    8     3 470743040 sda3
    8    16 102130688 sdb
    8    17   8388608 sdb1
    8    18  93740032 sdb2
    8    32  15351808 sdc
    8    33  15347712 sdc1

DebianのファームウェアはオフィシャルのLatest Firmware Imagesにある、Debian (BeagleBone Black - 2GB eMMC) 2014-05-14を使います。ダウンロードしてチェックサムを確認します。

$ wget http://debian.beagleboard.org/images/BBB-eMMC-flasher-debian-7.5-2014-05-14-2gb.img.xz
$ md5sum BBB-eMMC-flasher-debian-7.5-2014-05-14-2gb.img.xz
74615fb680af8f252c034d3807c9b4ae *BBB-eMMC-flasher-debian-7.5-2014-05-14-2gb.img.xz

イメージを解凍してmicroSDカードに焼きます。

$ unxz BBB-eMMC-flasher-debian-7.5-2014-05-14-2gb.img.xz
$ dd if=./BBB-eMMC-flasher-debian-7.5-2014-05-14-2gb.img of=/dev/sdc
3481600+0 レコード入力
3481600+0 レコード出力
1782579200 バイト (1.8 GB) コピーされました、 333.563 秒、 5.3 MB/秒

eMMCにフラッシュする

以下の手順で、microSDカードからBBBのeMMCにDebianをフラッシュします。

  • microSDカードをBBBのスロットに挿す
  • microSDカードスロットの上にあるBootボタンを押しながら、USBをWindowsと接続してSDカードから起動する
  • LEDが点滅し始めたら、Bootボタンを放す
  • eMMCへのフラッシュには、20分くらいかかる
  • フラッシュに成功すると、LEDが消灯して終了する
  • Windowsから、USBケーブルを抜く
  • BBBから、microSDカードを抜く

WindowsにUSBケーブルで接続してBBBの電源を入れます。Puttyを起動します。デフォルト接続設定は以下です。

  • IPアドレス: 192.168.7.2
  • username: debian
  • password: temppwd

debian-emmc.png

PuttyからSSH接続できました。OSのバージョンを確認しておきます。

$ cat /etc/debian_version
7.5
$ uname -a
Linux beaglebone 3.8.13-bone50 #1 SMP Tue May 13 13:24:52 UTC 2014 armv7l GNU/Linux

Windows7のネットワーク設定

USBネットワークの名前

BBBからUSBケーブルで接続しているWindowsのネットワークを使い、インターネットに接続できるようにします。わかりやすいように、USBネットワークの名前を変更しておきます。

  • コントロールパネル > ネットワークとインターネット > ネットワークと共有センター > アダプターの設定の変更 > Linux USB Ethernet/RNDIS Gadgetのネットワークを選択
  • 名前: BeagleBoneBlack

ワイヤレスネットワークの共有設定

BBBと共有したネットワークの設定を変更します。今回はWindows7のワイヤレスネットワークを選択して共有タブを表示します。

  • コントロールパネル > ネットワークとインターネット > ネットワークに接続 > 接続するネットワークを右クリック > 状態 > プロパティ > 共有タブ

以下のように、BeagleBone BlackのUSBネットワークからインターネットへの接続を許可します。

  • ネットワークのほかのユーザーに、このコンピューターのインターネット接続をとおして接続を許可する: チェック
  • ネットワークのほかのユーザーに、共有インターネット接続の制御や無効化を許可する: チェック外す
  • ホームネットワーク接続: BeagleBoneBlackを選択

wi-fi-network-share.png

また、このワイヤレスネットワークは無線LANルーターからDHCPでIPアドレスとDNSサーバーを取得しています。

wi-fi-dhcp.png

USBネットワーク

BBBのUSBネットワーク設定画面を以下の手順で開きます。

  • コントロールパネル > ネットワークとインターネット > ネットワークの状態とタスクの表示 > アダプターの設定の変更 > Linux USB Ethernet/RNDIS Gadgetのネットワークを選択

TCP/IPv4の設定画面を開きます。

  • プロパティボタン > インターネット プロトコル バージョン 4 (TCP/IPv4) をダブルクリップ

以下のように、IPアドレスとDNSサーバーの情報を自動的に取得するようにします。

bbb-network-dhcp.png

Debian 7.5のネットワーク設定

デフォルトゲートウェイの追加

BBBとWindowsをUSBケーブルでつなぎ、PuttyからSSH接続します。routeコマンドでデフォルトゲートウエイの設定します。

$ sudo route add default gw 192.168.7.1

routeコマンドで設定を確認します。

$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.7.1     0.0.0.0         UG    0      0        0 usb0
192.168.7.0     0.0.0.0         255.255.255.252 U     0      0        0 usb0

pingで名前解決ができるようになりました。

$ ping -c 3 www.yahoo.co.jp
PING www.g.yahoo.co.jp (183.79.135.206) 56(84) bytes of data.
64 bytes from f1.top.vip.kks.yahoo.co.jp (183.79.135.206): icmp_req=1 ttl=53 time=19.4 ms
...

再起動後も設定を有効にする

再起動後もデフォルトゲートウェイが有効になるように設定を追加します。Windows 7 Internet Sharing for BeagleBone BlackのコメントにあるDebian用の書き方を参考にします。udhcpdのすぐ下にデフォルトゲートウェイの設定を追加します。

/opt/scripts/boot/am335x_evm.sh
/sbin/ifconfig usb0 192.168.7.2 netmask 255.255.255.252
/usr/sbin/udhcpd -S /etc/udhcpd.conf
/sbin/route add default gw 192.168.7.1

BBBを再起動しても名前解決ができるようになりました。

$ ping -c 3 www.yahoo.co.jp
PING www.g.yahoo.co.jp (183.79.27.149) 56(84) bytes of data.
64 bytes from f12.top.vip.kks.yahoo.co.jp (183.79.27.149): icmp_req=1 ttl=53 time=22.8 ms
...
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0