— よく使われる製品・最短手順・選び方のヒント
本記事は実装ガイドです。特定ベンダーの宣伝目的ではありません。数値・事例は公開資料の要点を工程設計の背景として短く引用します。
背景(1分で把握)

Source: https://investors.raspberrypi.com/reports
- 公式レポート(上期の発表スライド)では、RP2040を含むMCU出荷が H1’23: 1.7M → H1’25: 4.5M と段階的に伸長。
- 同スライドのケーススタディでは、アプリ層までを含む処理の負荷から設計の複雑さ・期間・コストが課題化し、統合的なオフロード構成が解決策として言及。
- つまり「RP2040採用拡大 × 有線の安定性要求」という文脈で、実装経路の選択肢が複数並びます。
出典:Raspberry Pi Holdings plc, “HY 2025 Results Presentation”(掲載スライドの要点)。
実装経路の全体像(まずはここから)
1) SPI Ethernetコントローラ(最も一般的)
- 代表例:W5x00(W5100S/W5500)、Microchip ENC28J60
- 長所:RP2040のSPIだけで実装可/資料とサンプルが豊富/再現性が高い
- 注意:SPIクロック・バッファ設計でスループット・レイテンシが変動
配線:SCK, MOSI, MISO, CS(SS), (INT/RST任意), 3V3/5V, GND + RJ45
Arduino最小例:W5x00
#include <SPI.h>
#include <Ethernet.h>
#define ETH_CS 17
byte mac[] = {0x02,0x11,0x22,0x33,0x44,0x55};
EthernetServer server(80);
void setup(){ Serial.begin(115200); SPI.begin(); Ethernet.init(ETH_CS);
if(Ethernet.begin(mac,10000)==0){ IPAddress ip(192,168,0,50),dns(8,8,8,8),gw(192,168,0,1),mask(255,255,255,0);
Ethernet.begin(mac,ip,dns,gw,mask);} server.begin();}
void loop(){ auto c=server.available(); if(c){ c.println("HTTP/1.1 200 OK\r\nContent-Type: text/plain\r\n\r\nRP2040 Ethernet OK"); c.stop();}}
Arduino最小例:ENC28J60(UIPEthernet)
#include <UIPEthernet.h>
#define ETH_CS 17
byte mac[] = {0x02,0xAA,0xBB,0xCC,0xDD,0xEE};
EthernetServer server(80);
void setup(){ Serial.begin(115200); Ethernet.init(ETH_CS);
IPAddress ip(192,168,0,60),dns(8,8,8,8),gw(192,168,0,1),mask(255,255,255,0);
Ethernet.begin(mac,ip,dns,gw,mask); server.begin();}
void loop(){ auto c=server.available(); if(c){ c.println("HTTP/1.1 200 OK\r\n\r\nENC28J60 OK"); c.stop();}}
小ワザ:まず SPI 8–10 MHz で安定確認 → 14/20/25 MHzへ段階的に上げる。INTは後付けがデバッグしやすい。
2) USB–Ethernetドングル(USBホスト)
- 例:ASIX AX88772B、Realtek RTL8152
- 長所:追加コントローラ不要
- 注意:RP2040はUSB FS(12 Mb/s)、USBホストスタック必須/互換性管理・電源余裕
勘所:TinyUSB Host + ECM/RNDIS、エラーパス(抜き差し/サスペンド)試験、バスパワ確認
3) 外部MAC/PHY(RMII/MII)/PIO実験
- 例:LAN8720 + 外部MAC/PIOでMAC相当
- 注意:難度・保守コスト高(研究用途向け)
4) Ethernet-over-Serial
- SLIP/PPPでシリアルをIP化(帯域/遅延は限定的)
使い分け早見表
| 要件 | おすすめ経路 |
|---|---|
| 最短で動かす/資料が豊富 | SPIコントローラ(W5x00等) |
| 基板面積・部品点数最小/量産性 | SiP統合 |
| USB資産流用・プロトタイプ | USB–Ethernet(ホスト) |
| 特殊プロトコル・研究 | 外部MAC/PHY or PIO |
| 狭帯域の特殊リンク | Ethernet-over-Serial |
運用Tips
- リンクフラップ時は ARP更新 → ソケット再オープン
- DHCP 10sタイムアウト → 静的IP フォールバック
- 24–72h soak(HTTP+ping)で再接続時間/ジッタ/温度を記録
SiP統合(参考)
- W55RP20=RP2040 + W5500 のSiP
- ねらい:フットプリント/配線/部品点数の削減、実装工数の軽減
- 向き:小型化・BOM最適化がKPIの量産段階
- ソフト:W5x00系とほぼ同フロー(ピン/初期化差分を確認)
まとめ
- 基本線は SPIコントローラ。要件に応じて USB/外部MAC/Serial/SiP を選択。
- 背景データとケースは設計判断の文脈として参照。動かしてから最適化が近道。