Raspberry Pi 4のブートローダーEEPROMを最新版に更新するには

令和4年、2022年12月現在。Raspberry Pi 4のブートローダーは、このような画面なのですね。ふむふむ。

公式のRaspberry Pi OSや、先日リリースされたFedora 37をUSB起動するにあたり。

書き換え可能なEEPROMのブートローダーを搭載した、Raspberry Pi 4のブートローダーの更新手順を記録しておこうと思います。


Raspberry Pi 4のEEPROM更新手順

使用する機材

Raspberry Pi 4はメモリー4GBを使用しましたが。8GB版も同様かと思います。

更新は、microSDカードを使用しました。容量64GBで問題なく更新できました。

最低読み書き速度30MB/sが保証され、かつランダムアクセスも高速な「UHS-I U3 V30 A2」対応がお勧めです。

Raspberry Pi Imagerのインストール

microSDカードにRaspberry Pi OSを書き込み、起動したいと思います。

手持ちのPCに、Raspberry Pi Imagerをインストールしました。

公式サイトからダウンロードさせて頂きました。

https://www.raspberrypi.com/software/

Raspberry Pi OS起動用SDカード作成

EEPROMの更新は、Raspberry Pi OSを使用します。

32-bit版を選択しました。「書き込む」ボタンをクリックすると、イメージのダウンロードが開始されますが。

このタイミングで、歯車ボタン→詳細な設定

ホスト名、SSHの有効化、ユーザー名とパスワード、Wi-Fi設定、ロケール設定が可能のようです。(後から気づきました

こちらをあらかじめ設定しておけば、ディスプレイ・キーボード・マウスを接続せず、LANのみ接続して設定することも可能のようです。作成したmicroSDカードをRaspberry Pi 4にセットします。

Raspberry Pi OS起動

ディスプレイ・キーボード・マウスを接続して起動しました。

画面の指示に従って、初期設定を済ませて再起動します。

ターミナルでEEPROMバージョンを確認

EEPROMの更新手順は、こちらの公式ガイドに従って行いますが。

https://www.raspberrypi.com/documentation/computers/raspberry-pi.html

資料を拝見しますと。既定の状態で、rpi-eeprom-updateというsystemdサービスがスタートして、新しいイメージがあれば、自動でマイグレートしてくれるという記述があります。

Raspberry Pi 4をネットワークに接続し、Raspberry Pi OSを最新の状態に更新後、再起動することで、最新のEEPROMに更新されるそうです。

sudo apt update
sudo apt upgrade -y
sudo reboot

Raspberry Pi OS再起動後、次のコマンドで状態を確認してみます。

sudo rpi-eeprom-update
vcgencmd bootloader_version
vcgencmd bootloader_config

令和4年12月8日現在。

ブートローダーは、バージョン1670423055が有効になっています。

VL805 EEPROMは「up to date」最新版の表記があります。

  • 現在のバージョン:000138a1
  • 最新バージョン:000138a1

ふむふむ。

※22.12.29追記:1台目のRaspberry Pi 4は、自動で更新されたようですが。

2台目を試したところ更新されなかったため、以下のコマンドで手動で更新しました。

こちらのコマンドで手動で更新するほうが確実かと思います。

# ブートローダーの手動更新コマンド
sudo rpi-eeprom-update -a
sudo reboot
# 再起動完了後、バージョンを再度確認
sudo rpi-eeprom-update
vcgencmd bootloader_version
vcgencmd bootloader_config

これで確かに、Raspberry Pi 4のブートローダー、EEPROMが最新版に更新されました。

更新後のブートローダーの画面で実際に確認すると、bootloaderの日付が2022/12/07と最新になっていることが確認できました。


起動順(ブート・オーダー)の確認

Raspberry Pi 4を起動するとき、microSD/USB/ネットワークのどのメディアから起動するか。その順番を決めるBOOT_ORDERの値を確認します。

公式資料を拝見しますと。

  • 0xf41
    • Try SD first, followed by USB-MSD then repeat (default if BOOT_ORDER is empty)
    • 最初にSDカードから起動できるか確認して、続いてUSBとMicroSDを繰り返して確認とあります。
  • 0xf14
    • try USB first, followed by SD then repeat
    • 最初にUSBから起動。続いてSDカード

このあたりの設定を有効にしておけば、microSDカードまたはUSB接続のストレージから起動できそうです。

手持ちのRaspberry Pi 4はBOOT_ORDER=0xf41のため、特に変更せずそのまま使用する予定です。

値の書き換えは、raspi-configを使用します。

sudo raspi-config

6 Advanced Options→A6 Boot Order

  • B1 SD Card Boot
  • B2 USB Boot
  • B3 Network Boot

このような感じで、Raspberry Pi 4のEEPROMを、現状の最新の状態に更新してみました。

https://github.com/raspberrypi/firmware

GithubのRaspberry Pi firmwareを拝見しますと。

リリースノートを見ると、頻繁に細かい修正が行われている事がわかります。

microSDカードやUSBストレージ等、新しいデバイスを使用する場合や。

新しくリリースされたOSを起動する場合など。

EEPROMを更新してから起動したほうが、トラブルに悩むリスクが減らせると思います。

さて。準備ができたところで。次は、起動してみたいOSを準備しようと思います。

Raspberry Pi OS(64ビット)はこちらになります。

USB起動版Raspberry Pi OS 64ビットの初期設定 令和5年(2023年)1月版
令和4年(2022年)2月。旧名称Raspbianこと、Raspberry Pi OSの64ビット版が正式リリースされました。 ...

公式サポートされたFeodra 37はこちらです。

Raspberry Pi 4でFedora 37 Serverを起動してみました
Raspberry Pi 4で。 64ビット版Fedora 37 Serverを起動してみました。 起動用microSDカードの作成...
スポンサーリンク

フォローする

スポンサーリンク