Raspberry Pi Pico WおよびRaspberry Pi Pico H、Pico WHがリリース

Raspberry Pi財団は6月30日に、Raspberry Pi Pico W、およびRaspberry Pi Pico H、Pico WHをそれぞれ発表しました。

Raspberry Pi Pico Wは、2021年1月に発売したRaspberry Pi Picoにワイヤレス機能を追加したモデルです。Raspberry Pi Picoと同様、Raspberry Piが設計したRP2040チップが使用されており、133MHzのARM Cortex-M0+デュアルコア、256KB RAM、30個のGPIO、様々なインターフェースを搭載します。また、コードとデータ用の2MBのオンボードQSPIフラッシュメモリを搭載しています。

Raspberry Pi Pico Wのワイヤレス機能には、Infineon CYW43439チップを採用しており、無線LANはIEEE802.11 b/g/nを、Bluetoothは5.2をサポートします。なお、リリース時点では無線LANのみがサポートされます。Raspberry Pi Pico Wは6ドルで販売されます。

Raspberry Pi Pico HおよびPico WHは、GPIOにヘッダーと、JTAGにコネクタがあらかじめ実装されたモデルです。自分でヘッダーを実装する必要がなく、簡単にプロジェクトに使用することが可能になります。Raspberry Pi Pico Hは5ドル、Raspberry Pi Pico Hは7ドルで販売されます。

国内ではKSYおよびスイッチサイエンスが各モデルの販売について案内を出しています。Pico WについてはKSYでは990円(税込)、スイッチサイエンスでは1,111円(税込)で販売するとのことです。

https://raspberry-pi.ksyic.com/news/page/nwp.id/108/

https://prtimes.jp/main/html/rd/p/000000091.000064534.html

Japanese Raspberry Pi Users Groupでは、お預かりしたサンプルの実機レポートを別途掲載しています。ぜひご覧ください。

(2023/3/27追記)日本での販売が開始しました。

Raspberry Pi OS Bullseye アップデートがリリース

2022年4月7日に、Raspberry Pi OS Bullseeye のアップデートがリリースされました。

今回のアップデートでは、セキュリティを強化及びIoT製品に関する一部の国の法律に対応するために、Raspberry Pi登場初期からのデフォルト設定であったpiユーザー及びパスワードが廃止されました。デスクトップ版・Lite版ともに、初回起動時にユーザー名とパスワードの設定が必要になります。なお、ヘッドレスで利用する場合には、Raspberry Pi Imagerを使用してカスタマイズするか、起動パーティションにuserconfファイルを配置して所定の書式を書くことで対応できます。また、既存の環境でpiユーザーのユーザー名を変更するための方法についても用意されています。

その他、Bluetoothに関する改善や、Waylandの実験的サポートが追加されています。

Raspberry Pi Zero 2 Wを見て触ってレポート

本日発表されたRaspberry Pi Zero 2 Wですが、サンプルをお預かりしていますので、レポートをしていきます。

外観

いきなりですが先代のRaspberry Pi Zero Wとの比較写真です。上がPiZero W、下がPiZero 2 Wです。

物理的なサイズとポートの配置・形状は一切変わりません。HDMIポートはMicroHDMIにはならずMiniHDMIのままですし、電源とUSBポートもUSB-CにはならずMicroUSBを維持しています。SDカードスロットも以前と同様ロックのないタイプです。強いて言えば、無線LANのアンテナが数ミリメートルほど左にずれました。

基板上のチップ類の配置については、アクセスランプは以前と同じ場所にACTランプが配置されていますが、その他についてはもちろんというか配置等は異なります。例えばPimoroniのPiBowなどのような、基板のパーツを避けながら被せるレイヤーが存在するようなケースは互換性はないと思われます。オフィシャルのケースなどは流用可能です。話を戻して、銀色のカバーがついているのは無線の回路部分です。

基板表面をもう少し見ます。SoCは機能的にはRaspberry Pi 3のBCM2837と同等のCortex-53ですが、RAMを統合して1パッケージ(System-in-Package)にした「RP3A0」パッケージとなっています。ちなみに、SoCの2行目の2041は、Raspberry Pi Picoで使われるRP2040の続番ではなく、製造された年と週番(2020年41週)がたまたまそれっぽかっただけとのことです。我々の手元に届く頃には2141とか2205とかになっているんでしょうね。

基板裏面を見ていきます。Zero Wまではアナログビデオ出力とリセット用にピンを取り付けられるスルーホールが左上にありましたが、省略されてしまいました。おそらく、利用されていない判断されたか、3B+以降で採用されたPoEポートとの衝突が考慮されたか、どちらかの可能性が考えられそうです。一応、スルーホールの代わりに、基板裏面にランドが残されており、リセットは左上、アナログビデオ出力は右下にそれぞれ刻印が見られます。

なお、現時点で日本の無線に関する認証はまだ取得されていないため、Zero Wのような技適マークの印字はありません。

カタログスペック比較

スペックをおさらい&いくつかのモデルと比較してみます。

Zero 2 W3A+3BZero W
CPUCortex-A53Cortex-A53Cortex-A53ARM1176JZF-S
周波数1GHz1.4GHz1.2GHz1GHz
コア数4441
64-bit×
DRAM512MB512MB1GB512MB
無線LAN802.11 b/g/n802.11 b/g/n/ac802.11 b/g/n802.11 b/g/n
Bluetoorh4.2,BLE4.2,BLE4.1,BLE4.1,BLE

Zero 2 WはRaspberry Pi 3シリーズと同じCortex-A53 CPUを採用しており、4コア・64-bit対応の点で3B・3A+と共通です。周波数に関しては少し抑えめの1GHzとなっていますが、Zero Wとの性能差を考えれば3B・3A+より多少遅いことなどもはや誤差と言えそうです。

DRAMについてはZero Wや3A+と同様512MBです。1GBあると嬉しい感じはしますが、3A+と差ができてしまうので仕方ないかなと思います。個人的には本当は3A+も1GBあると嬉しいですけど。

無線LANについては引き続き2.4GHz帯のみのサポートです。ここは3A+との棲み分けポイントになりそうです。5GHzがほしかった!という方は3A+を検討すると良いでしょう。

ベンチマーク

恒例のUnixBenchでベンチマークを取得しました。今回もスイッチサイエンスさんからお借りしている電波暗箱を使用させていただいております。

ベンチマーク中の様子は、画像右下にあるPiZero v1.3をWebカメラ化したものを箱のUSBポートを通じてMacと接続して撮影しています。作り方は私あっきぃ個人のブログで紹介しているのでよければどうぞ。

さて、箱を閉じて通電を開始します。起動後のアイドル時の消費電力は0.26Aでした。ただし、これはUSB-LANアダプターを接続しているため、その消費電力も含まれる点に注意が必要です。写真は省略しますが、LANアダプターを抜いた状態では0.11A前後であることを確認できました。これはPiZero Wと同程度です。

UnixBench中のようす。0.26A→0.37Aまで上昇することを確認できました。先述のLANアダプターの消費電力0.15Aを引けば、およそ0.11A→0.25Aとなるでしょう。

Raspberry Pi 2 W UnixBench結果

========================================================================
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: yamanooku: GNU/Linux
   OS: GNU/Linux -- 5.10.17-v7+ -- #1414 SMP Fri Apr 30 13:18:35 BST 2021
   Machine: armv7l (unknown)
   Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968")
   CPU 0: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)

   CPU 1: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)

   CPU 2: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)

   CPU 3: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)

   17:08:28 up 1 min,  1 user,  load average: 0.05, 0.03, 0.01; runlevel Oct

------------------------------------------------------------------------
Benchmark Run: 日 10月 17 2021 17:08:28 - 17:36:44
4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables        3695886.3 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     1025.3 MWIPS (9.9 s, 7 samples)
Execl Throughput                                626.1 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks         94927.9 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           26547.0 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        273223.5 KBps  (30.0 s, 2 samples)
Pipe Throughput                              140439.4 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  26513.9 lps   (10.0 s, 7 samples)
Process Creation                               1184.1 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   1523.0 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    457.4 lpm   (60.1 s, 2 samples)
System Call Overhead                         486290.0 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    3695886.3    316.7
Double-Precision Whetstone                       55.0       1025.3    186.4
Execl Throughput                                 43.0        626.1    145.6
File Copy 1024 bufsize 2000 maxblocks          3960.0      94927.9    239.7
File Copy 256 bufsize 500 maxblocks            1655.0      26547.0    160.4
File Copy 4096 bufsize 8000 maxblocks          5800.0     273223.5    471.1
Pipe Throughput                               12440.0     140439.4    112.9
Pipe-based Context Switching                   4000.0      26513.9     66.3
Process Creation                                126.0       1184.1     94.0
Shell Scripts (1 concurrent)                     42.4       1523.0    359.2
Shell Scripts (8 concurrent)                      6.0        457.4    762.4
System Call Overhead                          15000.0     486290.0    324.2
                                                                   ========
System Benchmarks Index Score                                         214.9

------------------------------------------------------------------------
Benchmark Run: 日 10月 17 2021 17:36:44 - 18:05:01
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables       14799937.3 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4100.3 MWIPS (9.9 s, 7 samples)
Execl Throughput                               1699.7 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        160309.0 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           42973.0 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        456233.9 KBps  (30.0 s, 2 samples)
Pipe Throughput                              560846.9 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 103772.9 lps   (10.0 s, 7 samples)
Process Creation                               3647.1 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   3588.7 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    438.1 lpm   (60.3 s, 2 samples)
System Call Overhead                        1874972.7 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   14799937.3   1268.2
Double-Precision Whetstone                       55.0       4100.3    745.5
Execl Throughput                                 43.0       1699.7    395.3
File Copy 1024 bufsize 2000 maxblocks          3960.0     160309.0    404.8
File Copy 256 bufsize 500 maxblocks            1655.0      42973.0    259.7
File Copy 4096 bufsize 8000 maxblocks          5800.0     456233.9    786.6
Pipe Throughput                               12440.0     560846.9    450.8
Pipe-based Context Switching                   4000.0     103772.9    259.4
Process Creation                                126.0       3647.1    289.5
Shell Scripts (1 concurrent)                     42.4       3588.7    846.4
Shell Scripts (8 concurrent)                      6.0        438.1    730.2
System Call Overhead                          15000.0    1874972.7   1250.0
                                                                   ========
System Benchmarks Index Score                                         552.5

同じSDカードを使ってZero 2 W、3B、3B+の3環境でテストをしましたが、Zero 2 W < 3B < 3B+の結果となりました。

最後のSystem Benchmarks Index Scoreだけで見ると、ストレージ速度に影響するファイルシステム読み書きの項目を含んでしまうため、おもにCPUのベンチマーク項目である整数演算処理、浮動小数点数演算処理、Execlシステムコールの結果(4コア時)を抜き出して表にまとめてみました。

Zero 2 W3B3B+
Dhrystone 2 using register variables14799937.3 lps (10.0 s, 7 samples)15492821.1 lps (10.0 s, 7 samples)17748593.7 lps (10.0 s, 7 samples)
Double-Precision Whetstone4100.3 MWIPS (9.9 s, 7 samples)4928.4 MWIPS (9.9 s, 7 samples)4935.7 MWIPS (9.9 s, 7 samples)
Execl Throughput1699.7 lps (29.9 s, 2 samples)1910.9 lps (29.6 s, 2 samples)1969.6 lps (29.9 s, 2 samples)
System Benchmarks Index Score552.5592.0664.0

全環境のフルの結果はまとめのあとに貼り付けます。

発熱

Zero 2 Wは、発熱が抑えられている点もアピールポイントになっています。手間ではありつつ、電源を落としてすぐに暗箱の中のZero 2 Wを触ってみる方法で確認をしてみましたが、アイドル状態では触ってもなんの問題もないぬるさでした。「yes > /dev/null &」x4回で長時間(具体的な時間計測はしませんでしたが3〜4分)負荷をかけるようなことをすると流石に熱くなりますが、開始から30秒程度なら、何秒もじっくり指を押し当ててやっと熱いと感じるくらいの温度(58℃くらい)でした。それぞれを「vcgencmd measure_temp」コマンドで見ると、アイドル時38.6℃、高負荷時は68℃ほどとなりました。3Bの場合はアイドル42.9℃、高負荷時80.6℃(!)となったので、それなりの差になりました。

以下のコマンドで高負荷時のクロックとスロットル発動状況を同時に見ていくと、3Bでは80℃に達したところでスロットルが発動してクロック数を下げようとし始めましたが、Zero 2 Wでは80度に達しないためスロットルが発動しないまま1GHz駆動を維持したことになります。

$ vcgencmd measure_temp; vcgencmd measure_clock arm; vcgencmd get_throttled
temp=80.2’C
frequency(48)=1200000000←この数字が徐々に下がっていく
throttled=0x2002

まとめ

おそらく待っていた人が結構多いと思われるRaspberry Pi Zeroのアップデート。その内容は性能を確実に進歩させつつ、先代との物理的な互換性を維持した堅実なものでした。

使い所としては、シンプルにZero Wからのアップデートもよし、3A+程度の性能はほしいが物理サイズを抑えたい時もよし、と言ったところでしょうか。Pi1/Zeroの古いCPUのARM命令に対応しないソフトウェアもZero 2 Wでコンパクトに動かすことが可能になった点も大きいです。

惜しむらくは、日本はリリース時点で技適が未取得状態のため、例によってお預け状態な点でしょう。日本で使えるようになる日が待ち遠しいですね……!!

Raspberry Pi 3 Model B UnixBench結果

========================================================================
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: yamanooku: GNU/Linux
   OS: GNU/Linux -- 5.10.17-v7+ -- #1414 SMP Fri Apr 30 13:18:35 BST 2021
   Machine: armv7l (unknown)
   Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968")
   CPU 0: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)

   CPU 1: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)

   CPU 2: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)

   CPU 3: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)

   13:18:47 up 18 min,  1 user,  load average: 0.00, 0.00, 0.00; runlevel Oct

------------------------------------------------------------------------
Benchmark Run: 火 10月 19 2021 13:18:47 - 13:46:54
4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables        4435259.3 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     1233.3 MWIPS (9.8 s, 7 samples)
Execl Throughput                                737.2 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        114078.3 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           31844.0 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        323093.9 KBps  (30.0 s, 2 samples)
Pipe Throughput                              168626.6 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  31239.6 lps   (10.0 s, 7 samples)
Process Creation                               1443.8 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   1784.3 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    454.3 lpm   (60.1 s, 2 samples)
System Call Overhead                         583581.3 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    4435259.3    380.1
Double-Precision Whetstone                       55.0       1233.3    224.2
Execl Throughput                                 43.0        737.2    171.4
File Copy 1024 bufsize 2000 maxblocks          3960.0     114078.3    288.1
File Copy 256 bufsize 500 maxblocks            1655.0      31844.0    192.4
File Copy 4096 bufsize 8000 maxblocks          5800.0     323093.9    557.1
Pipe Throughput                               12440.0     168626.6    135.6
Pipe-based Context Switching                   4000.0      31239.6     78.1
Process Creation                                126.0       1443.8    114.6
Shell Scripts (1 concurrent)                     42.4       1784.3    420.8
Shell Scripts (8 concurrent)                      6.0        454.3    757.2
System Call Overhead                          15000.0     583581.3    389.1
                                                                   ========
System Benchmarks Index Score                                         252.7

------------------------------------------------------------------------
Benchmark Run: 火 10月 19 2021 13:46:54 - 14:15:41
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables       12227835.6 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     3682.3 MWIPS (12.8 s, 7 samples)
Execl Throughput                               1399.4 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        121227.0 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           33277.4 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        369295.4 KBps  (30.1 s, 2 samples)
Pipe Throughput                              457605.4 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  79855.0 lps   (10.0 s, 7 samples)
Process Creation                               2955.7 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   2707.8 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                    342.1 lpm   (60.2 s, 2 samples)
System Call Overhead                        1626120.6 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   12227835.6   1047.8
Double-Precision Whetstone                       55.0       3682.3    669.5
Execl Throughput                                 43.0       1399.4    325.4
File Copy 1024 bufsize 2000 maxblocks          3960.0     121227.0    306.1
File Copy 256 bufsize 500 maxblocks            1655.0      33277.4    201.1
File Copy 4096 bufsize 8000 maxblocks          5800.0     369295.4    636.7
Pipe Throughput                               12440.0     457605.4    367.9
Pipe-based Context Switching                   4000.0      79855.0    199.6
Process Creation                                126.0       2955.7    234.6
Shell Scripts (1 concurrent)                     42.4       2707.8    638.6
Shell Scripts (8 concurrent)                      6.0        342.1    570.2
System Call Overhead                          15000.0    1626120.6   1084.1
                                                                   ========
System Benchmarks Index Score                                         445.3

Raspberry Pi 3 Model B+ UnixBench結果

========================================================================
   BYTE UNIX Benchmarks (Version 5.1.3)

   System: yamanooku: GNU/Linux
   OS: GNU/Linux -- 5.10.17-v7+ -- #1414 SMP Fri Apr 30 13:18:35 BST 2021
   Machine: armv7l (unknown)
   Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968")
   CPU 0: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)

   CPU 1: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)

   CPU 2: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)

   CPU 3: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)

   22:36:09 up 1 min,  1 user,  load average: 0.66, 0.39, 0.15; runlevel Oct

------------------------------------------------------------------------
Benchmark Run: 金 10月 22 2021 22:36:09 - 23:04:14
4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables        5176786.8 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     1442.7 MWIPS (9.8 s, 7 samples)
Execl Throughput                                856.3 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        131242.3 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           36993.1 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        364366.1 KBps  (30.0 s, 2 samples)
Pipe Throughput                              196669.2 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  36451.0 lps   (10.0 s, 7 samples)
Process Creation                               1768.2 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   2015.8 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    541.2 lpm   (60.1 s, 2 samples)
System Call Overhead                         681516.9 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    5176786.8    443.6
Double-Precision Whetstone                       55.0       1442.7    262.3
Execl Throughput                                 43.0        856.3    199.1
File Copy 1024 bufsize 2000 maxblocks          3960.0     131242.3    331.4
File Copy 256 bufsize 500 maxblocks            1655.0      36993.1    223.5
File Copy 4096 bufsize 8000 maxblocks          5800.0     364366.1    628.2
Pipe Throughput                               12440.0     196669.2    158.1
Pipe-based Context Switching                   4000.0      36451.0     91.1
Process Creation                                126.0       1768.2    140.3
Shell Scripts (1 concurrent)                     42.4       2015.8    475.4
Shell Scripts (8 concurrent)                      6.0        541.2    901.9
System Call Overhead                          15000.0     681516.9    454.3
                                                                   ========
System Benchmarks Index Score                                         294.5

------------------------------------------------------------------------
Benchmark Run: 金 10月 22 2021 23:04:14 - 23:32:27
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables       17748593.7 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4935.7 MWIPS (9.9 s, 7 samples)
Execl Throughput                               1969.6 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        192140.3 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           51625.0 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        561711.5 KBps  (30.0 s, 2 samples)
Pipe Throughput                              673693.8 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 121560.4 lps   (10.0 s, 7 samples)
Process Creation                               4247.2 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   4309.2 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    569.1 lpm   (60.3 s, 2 samples)
System Call Overhead                        2247810.8 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   17748593.7   1520.9
Double-Precision Whetstone                       55.0       4935.7    897.4
Execl Throughput                                 43.0       1969.6    458.1
File Copy 1024 bufsize 2000 maxblocks          3960.0     192140.3    485.2
File Copy 256 bufsize 500 maxblocks            1655.0      51625.0    311.9
File Copy 4096 bufsize 8000 maxblocks          5800.0     561711.5    968.5
Pipe Throughput                               12440.0     673693.8    541.6
Pipe-based Context Switching                   4000.0     121560.4    303.9
Process Creation                                126.0       4247.2    337.1
Shell Scripts (1 concurrent)                     42.4       4309.2   1016.3
Shell Scripts (8 concurrent)                      6.0        569.1    948.5
System Call Overhead                          15000.0    2247810.8   1498.5
                                                                   ========
System Benchmarks Index Score                                         664.0

Raspberry Pi Zero 2 W 発表

Raspberry Pi財団は2021年10月28日に、Raspberry Pi Zeroシリーズの最新版である「Raspberry Pi Zero 2 W」を発表しました。

Raspberry Pi Zero 2 Wは、Raspberry Pi 3シリーズで採用されたCortex-A53を搭載した64-bit対応の4コア 1GHzのBCM2710A1 CPUを採用し、Raspberry Pi Zero Wに比べて大幅に性能が向上しました。また、DRAMを統合したSiP(System-in-Package)を採用し、「RP3A0」パッケージとして本体上に搭載されます。また、発熱にも配慮されており、高負荷時でもサーマルスロットリングせずに安定した動作が可能としています。

無線はIEEE 802.11 b/g/nに対応した無線LANおよびBluetooth 4.2(BLE対応)を搭載します。

フォームファクターはZero Wをほぼ継承しており、Mini HDMIポート、Micro USB OTGポート、Micro USB 電源ポート、CSIポートが用意されています。また、RUN・AV用のスルーホールは省略され、基板裏にランドとして配置が変更されました。

Raspberry Pi 2 Wの価格は15ドルで、本日より認定リセラーを通じて発売されます。

なお、発表時点では日本向けの技術基準適合証明の取得がないため、日本の通常環境下での使用はまだできません。

また、Raspberry Pi Zero 2 Wのリリースに合わせて、公式の電源アダプターが8ドルで発売されます。

Raspberry Pi Build HAT発表

Raspberry Pi財団は10月19日、Raspberry Pi Build HATを発表しました。

Build HATは、Raspberry PiとLEGO®を組み合わせてハンズオンで楽しく創造的な学習をするためのアドオンボードです。Build HATにはRaspberry Pi Picoに続く2つ目のRP2040マイクロコントローラー搭載製品としています。

Build HATには最新世代のLEGO®Technic™のモーターや、LEGO® Education SPIKE™ Primeの各種センサーと互換性があり、最大4つのモーターもしくはセンサーがBuild HATに接続できます。

Build HAT用のPythonライブラリが提供されており、かんたんにプロトタイプを作成することが可能です。

https://buildhat.readthedocs.io/en/latest/

また、モーターに安定した電力を供給するために、48W(DC8V/6A)の電源アダプターも同時に発売されます。

価格は、Build HAT本体が25ドル、電源アダプターは15ドルとなっています。

Build HATはRaspberry Pi認定リセラーを通じて販売されます。

製品情報ページ: https://www.raspberrypi.com/products/build-hat/

公式 Raspberry Pi ビギナーズ ガイド(第4版)日本語版が登場

Raspberry Pi財団が発行している公式Raspberry Pi ビギナーズ ガイド(第4版)に日本語版が登場しました。Raspberry Pi認定リセラーを通じて発売されます。

KSY: https://raspberry-pi.ksyic.com/main/index/pdp.id/670/pdp.open/670

Raspberry Pi ビギナーズ ガイド(第4版)は、Raspberry Pi 4およびRaspberry Pi 400に対応した内容に改定されており、初心者でも始められるよう、ていねいに図解されたセットアップ方法の解説から、ScratchやPythonを使用したプログラミング、GPIOを使用した電子工作など、幅広い内容をカバーした一冊となっています。

日本語版発行にあたり、Japanese Raspberry Pi Users Group有志で日本語訳の監訳という形でお手伝いいたしました。

なお、Raspberry Pi ビギナーズ ガイドはMagPiのサイトからPDF版を無償ダウンロードすることもできます(本記事執筆時点では日本語版はまだ入手不可能のようです)。

https://magpi.raspberrypi.org/books/beginners-guide-4th-ed

RP2040発売

Raspberry Pi財団は6月1日、RP2040の発売を発表しました。

RP2040はRaspberry Pi Picoに搭載されているマイクロコントローラーチップで、Raspberry Pi初の自社開発コントローラーとなります。Raspberry Pi Pico発表当初より将来的なRP2040チップの発売について言及されていました。

RP2040の単体販売により、Raspberry Pi Picoを使用することなく、直接自分のプロジェクトや製品の基板に組み込むことが可能になります。

1つあたりの販売価格は1ドルで、Raspberry Pi認定リセラーを通じて販売されます。(参考までに、Pimoroniでは10個単位での販売ページを公開しています。)

PoE+ HAT リリース

Raspberry Pi 財団は5月24日、PoE+ HATをリリースしました。価格は20ドルで、6月上旬よりRaspberry Pi認定リセラーから準備発売されます。

PoE+ HATは2018年に発売されたPoE HATの改良版となるPoEに対応したHATボードです。PoE HATは802.3afに対応しており最大15.4Wの電力が供給可能でしたが、今回リリースされたPoE+ HATは802.3atに対応しており、対応したPoEインジェクターと組み合わせることで最大25.5Wの電力供給が可能としています。これにより、Raspberry Pi 4にたくさんのUSBデバイスを接続している状況でもPoE+ HATで安定した電力供給が可能になります。

その他、部品を見直すことで発熱や部品サイズをコンパクトにするなどの改良が加えられています。

なお、以前のPoE HATも引き続き生産されますが、昨今の世界的な半導体不足によって入手困難なシリコンが使用されているため、そのようなシリコンを使用しておらずリードタイムが短いPoE + HATへの移行が検討可能としています。

Raspberry Pi Pico実機レポート!

あっきぃです。本日リリースされたRaspberry Pi Picoのサンプルを太田さんからお借りしているので、レポートしていきます。

外観

外観の紹介。サンプルのため、製品版とは一部異なる場合があります。また、製品はピンヘッダーが未実装の状態で販売されます。

表面
裏面

Raspberry Pi PicoにMicroPythonを入れて使う

Raspberry Pi Pico上でMicroPythonを使うことができます。何かを簡単に動かしてみるならこれが一番手軽でしょう。

セットアップの方法はRaspberry Pi Picoのサイトで解説されているため、そちらを参照してください。

https://pico.raspberrypi.org/getting-started

また、プログラミングにはRaspberry Pi OSにバンドルされているThonnyを使うことができます。こちらも上記サイトのMicroPython documentation(PDF)の4章で説明されているので、これを参照してセットアップすると良いでしょう。MicroPythonの場合ファイルの送受信にはampyなどを利用しますが、Thonnyでもファイル保存ダイアログを通じてファイルの送り込みや取得ができるようになるため、用意しておくと便利です。

……本当はドキュメント見ろではなくてステップごとの解説ができると良いのですが、今回はひとまず簡易レポートということで端折らせてください……!

PCD8544 LCDを動かしてみる

手持ちのそれっぽいデバイスでMicroPythonで動かせそうなものを漁ってみたところ、大昔に買ったNokia 5110ことPCD8544 LCDが出てきたので、これを動かしてみることにしました。

まずは配線。Raspberry Pi PicoのSPI0ポートを使用しつつ、これ以外は適当なGPIOピンに差し込みました。

[pcd8544:pico(physical pin)]
Gnd: Pico GND (38)
BL : Pico GP28(34)
Vcc: Pico 3V3 (36)
Clk: Pico GP6 ( 9)
Din: Pico GP7 (10)
DC : Pico GP4 ( 6)
CE : Pico GP5 ( 7)
RST: Pico GP8 (11)

PCD8544用のMicroPython向けライブラリはGithubにあり、そのまま使う事ができました。

https://github.com/mcauser/micropython-pcd8544

pcd8544とpcd8544_fbの2つライブラリがあり、後者のほうが文字を書いたり図を描いたりしやすいので、これをインストールしますが、ThonnyのManage Packagesではインストールできません。pcd8544_fb.pyをRaspberry Pi上に用意して一旦Thonnyで開き、Raspberry Pico上に/lib/pcd8544_fb.pyとして保存することでファイルを転送して、インストールします。

テストプログラムは、リポジトリのexample/framebuf.pyを元にピン番号を書き換えるだけで動きます。ピン番号の書き換えは以下の通り。SPI0番を使うのでSPI(0)で初期化します。Pinの番号はGPの方の数字を指定します。

spi = SPI(0)
spi.init(baudrate=2000000, polarity=0, phase=0)
print(spi)
cs = Pin(5)
dc = Pin(4)
rst = Pin(8)

# if your pcd8544 has BL pin, uncomment this line.
bl = Pin(28, Pin.OUT, value=1)

lcd = pcd8544_fb.PCD8544_FB(spi, cs, dc, rst)

その後の描画テストは、処理の度にframebuf.fill(0)が挟まれており、ほとんどのテストが見えずに終わってしまうため、framebuf.fill(0)を削りつつ、順に描画している様子がわかるようにちょっと書き換えたものを用意しました。

実行結果はこの通りです。

動画で!

ソースコードは以下のURLで公開しています。

https://gist.github.com/Akkiesoft/c72034f89b9aa6a3bedd4994bd51676a

まとめ

新しいRaspberry Pi Picoをさわってみる記事でした。

4ドル(日本では500円前後になるようです。スイッチサイエンスさんでは550円とのアナウンスがありました)と安価なので、気軽に買って遊んでよし、積みボードにしても罪悪感薄しな感じで良いですね(こら)。

また、MicroPythonの豊富なライブラリが利用できるのはわりと強いのかなと思いました。ESPと比べると無線周りがない点が弱みのような気もしますが、無線はいらない場合も多々なので、これはこれでありなのではないかと思います。

Raspberry Pi Picoリリース

Raspberry Pi 財団は1月21日にRaspberry Pi Picoをリリースしました。

Raspberry Pi Pico

Raspberry Pi Picoは、初めての自社設計チップであるRP2040が搭載された低コストで高パフォーマンスなマイクロコントローラーボードです。133MHzで動作するデュアルコアのARM Cortex-M0+、256KBのRAMと2MBのフラッシュメモリ、30個のGPIOピンや、SPI・I2C・UART・12ビットADC・PWMなどの幅広いインターフェースが用意されています。

Raspberry Pi PicoはMicroPythonやC/C++でプログラミングでき、以下のサイトで取り扱い方やRaspberry Pi Picoの詳細なスペック情報が確認できます。

https://pico.raspberrypi.org/getting-started

Raspberry Pi Picoの価格は4ドルで、本日から各Raspberry Pi認定リセラーから発売されます。