あっきぃ日誌

ラズピッピブログのようなオタクブログのようななにか

WaveShareのPCIe TO 2-CH M.2 HAT+を買ってみた

AI Kitを買ったのが6月中旬に届いて、少しサンプルで遊んだあと、それ以上の使い方がわからないので活用はできていません。一応OSCでの展示には使い始めています。初回入荷分がどこも瞬殺だったらしく、その次の入荷が世界的にもそんなにないようで、買っておいて良かったような気はしています。活用できてないですけど(2回目)。

akkiesoft.hatenablog.jp

こんなかんじ。

乗せるとこう。

サンプルもドキュメントに沿って実行するだけで動きますが、多分、本題は自分でモデルを作ったり、今後Picamera2でいじれるようになってからなのかなと思っています。

https://www.raspberrypi.com/documentation/accessories/ai-kit.html

昨日、データフローコンパイラーというものがリリースされたようですが、例によってなんのことだかはわかっていません。

https://www.raspberrypi.com/news/raspberry-pi-ai-kit-update-dataflow-compiler-now-available/

ので、この辺の話題は、詳しい人の記事を探していってください。ここにはありません。

NVMe SSDと排他利用じゃん

デモをしようとして思ったのは、AI KitだとNVMe SSDが使えなくなって、ストレージがUSB SSDMicroSDになっちゃうじゃんという点。先々週のOSC Hokkaido(レポートを書き忘れている…!)ではバッファローのUSB SSDを使ってきましたが、NVMe SSDも使いたいですよね。

というわけでやっと本題。WaveShareのPCIe TO 2-CH M.2 HAT+を買ってみました。AliExpressで2,260円でした。安くて助かる。

https://ja.aliexpress.com/item/1005007247340182.html

今日着弾したので早速おためし。写真は薄い本にも使う。

裏面。PCIeスイッチはASMedia ASM1182eで、PCIe2.0x1を2つ出してくれるやつです。つまり、このボードを使うとAIボードとNVMeを同時利用できるけれど、PCIe3.0のあのスピードは出せなくなります。じゃあUSB SSDでも変わらないじゃんと言われればそれまでですが、抜き差しの手間は少し減るので、まあ……。

PimoroniのNVMe BASE Duoなど他のメーカーのデュアルM.2ボードもほぼ同じくASMedia ASM1182e採用ですが、当初はブートはNGと言われていました。この問題については、Jeffが報告(リクエスト?)を出して、5月あたりのファームウェアからブートができるように対応されたので、SSDとAIボードを一緒に乗せてもブートできるようになっています。

Can't boot Pi 5 via NVMe behind PCIe switch / bridge · Issue #1833 · raspberrypi/firmware · GitHub

実際にブートを試して結果、ちゃんと起動できました。やったぜ。

いちおうhdparm。やはり2.0x1相当になっていますね。

/dev/nvme0n1:
 Timing buffered disk reads: 1290 MB in  3.00 seconds = 429.80 MB/sec

lspciで見るとこう。SSDとAIボードが両方見えています。

$ lspci
0000:00:00.0 PCI bridge: Broadcom Inc. and subsidiaries BCM2712 PCIe Bridge (rev 21)
0000:01:00.0 PCI bridge: ASMedia Technology Inc. ASM1182e 2-Port PCIe x1 Gen2 Packet Switch
0000:02:03.0 PCI bridge: ASMedia Technology Inc. ASM1182e 2-Port PCIe x1 Gen2 Packet Switch
0000:02:07.0 PCI bridge: ASMedia Technology Inc. ASM1182e 2-Port PCIe x1 Gen2 Packet Switch
0000:03:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller 980
0000:04:00.0 Co-processor: Hailo Technologies Ltd. Hailo-8 AI Processor (rev 01)
0001:00:00.0 PCI bridge: Broadcom Inc. and subsidiaries BCM2712 PCIe Bridge (rev 21)
0001:01:00.0 Ethernet controller: Raspberry Pi Ltd RP1 PCIe 2.0 South Bridge

物体検出デモも極端に遅くなったようには見えなかったので、問題はない気がしました。

ちなみに、ACTのLEDはSSDの読み書きでは光りますが、AIボードの動作中は光らないようでした。

アリ

デュアルM.2ボードを買って、SSDブートをしつつAIボードも使えるようにしてみたというお話でした。強いて言えば、カメラケーブルを通すための切り欠きがないので、ボードの固定を3本足にしないとダメそうな点が惜しいかなと言った感じです。2242のSSDを使えば切り欠きがあっても通せなくなりますけど、2230のSSDなら通せる気がするので、切り欠き追加バージョンが出てきたら買ってしまいそう。

あとはPCIe3.0x1版も現れたら嬉しいかも。ASM2806あたりを採用したら可能性がありそうなのかしらん……?調べたら、Radxaが作っているようで。見た感じブートも行けそう……?

Radxa Quad M.2 SSD HAT · Issue #652 · geerlingguy/raspberry-pi-pcie-devices · GitHub

あとは、片方10GbE NICもやりたいな。やるか。

余談

全然関係ないですが、コミケの新刊は一応中身は書き上がりました。今日届いたブツの写真を差し込んで完成です。問題は表紙が未着手なんだよな……?