TOPに戻る

Raspberry Pi Picoでプログラミング ① ラズパイ4の準備(1) USBブートの設定

 C/C++言語でPicoのプログラムを作ります。開発環境はラズパイ4です。

 使用環境
  • Raspberry Pi Raspberry Pi 4 Model B 2MB
  • OS Raspberry Pi OS(32ビット)5.10.17

ラズパイの用意

 Raspberry Pi Pi400以降のRaspberryPi 4Bボードは、デフォルトでUSBブートをサポートしたファームウェアです。

 それ以前のラズパイは、「SDメモリ・カード」からブートと「USBのストレージ」からのブートを変更できるようにファームウェアを更新できます。デフォルトはSDメモリ・カードです。USBのストレージからブートするように変更する方法は、下記のページに解説されています。二通りあります。

  USB mass storage boot

 上記の解説は、USBのストレージからブートするように変更するだけではなく、ファームウェアを更新しているように思われます。

 いま日本で入手できるラズパイ4がUSBブートになっているかどうかは不明です。 

 しかし、ファームウェアが新しければ、SDメモリが入っていればそれでブートし、そうでなければUSBストレージからブートするという設定ですから、なにも変更しなくてもいいわけです。

 2台のラズパイ4で試しました。1台は、最近まで、最新のOSで使っていました。もう1台は、昨年の暮れまで最新のOSを使っていました。どちらも、SDメモリを抜いておけば、USBストレージからブートできました。

 昨年、夏ごろは、ファームウェアを明示的にアップデートしないと、普通のアップデートではファームウェアは更新されないという解説を読んだことがあります。ファームウェアの更新を含んだフルアップグレードは、次のコマンドで行います。

sudo apt update
sudo apt full-upgrade
sudo reboot

 この更新により、「SDメモリが入っていればそれでブートし、そうでなければUSBストレージからブートするという設定」になっていると思われますが、確認していません。


USBストレージの書き込み

 Raspberry Pi Imagerを使って、StorageをUSBストレージにして、RASPBERRY PI OSを書き込みます。



USBストレージ①

 昔Windows10で使っていたM.2 NVMe SSD 256GB をM.2 SSD ケースにいれました。

ELUTENG M.2 SSD ケース Type-C to NGFF ハードドライブケース M.2 アダプタ SATA B key / B+M keyのみ対応 USB 3.1 Gen1 M.2 ハードディスクケース 5Gbps 2230 / 2242 / 2260 / 2280mm USB M.2 変換 アダプタ UASPサポート USB C + USB A ケーブル ネジセットドライバ付き (USB to M.2 ボックス)

 M.2には「NVMe SSD」と「SSD」の2種類があります。入れ物は、それぞれ異なります。

 SDメモリは抜いておいて、このUSBストレージをUSB3のコネクタに挿し、ラズパイの電源を入れます。

USBストレージ②

 USBメモリの32GBです(USB2.0)。Raspberry Pi Imagerで書き込みするのに相当時間がかかっていました。価格の安価なUSBメモリは、読み出しは高速ですが、書き込みに時間がかかる製品が多いようです。

 SDメモリは抜いておいて、このUSBストレージをUSB3のコネクタに挿し、ラズパイの電源を入れます。

連載 Raspberry Pi Picoでプログラミング

(1) ラズパイ4の準備(1) USBブートの設定

(2) ラズパイ4の準備(2) 標準入出力の用意

(3) ラズパイ4の準備(3) LチカとHello, world!の実行

(4) ラズパイ4の準備(4) リモート環境の設定

(5) プログラミングの環境整備とLチカ

(6) Hello, World!

(7) 使用するピンと機能

(8) クロックの値の表示

(9) i2cscanner

(10) i2c APIと気圧センサLPS25

(11) i2c 温度センサTMP117

(12) i2c 湿度センサAHT20

(13) spi APIとA-DコンバータMCP3008

(14) spi A-DコンバータMCP3208

(15) gpioファンクション

(16) gpio スイッチを押すとLEDが点灯する STEP2

(17) gpioファンクション MASK