RP2040 Universal SFP Transceiver Mini Module Ver 1.0
RP2040でSFPモジュールを使用し、光ファイバー通信を可能にするモジュールです。
主な特徴
- ノイズに強い
- 長距離通信可能(シングルモードファイバー使用で10km)
- 通信速度8Mbps(SFP通信帯域10Mbps)※現状のファームウェア
- Arduino IDEでも開発可能
ピン数の多い通常版もあります: RP2040 Universal SFP Transceiver Module Ver 1.0
SFPモジュールを使用し始めたきっかけ: [HTLAB.NET] DRSSTC SFP 光ファイバーシステム
組み立て方
ハンダ付けとファームウェア書き込みが必要な組み立てキットです
内容物確認
- SMD実装済み基板(RP2040 Universal SFP Transceiver Mini Module Ver 1.0) * 1枚
- 1 * 2(2P)ピンヘッダー * 2個
- 1 * 40(40P)ピンヘッダー * 1個(14Pに切断して使用してください)
- ジャンパーピン * 2個(BOOT / RUN のスイッチ代わりにご利用ください)
- 2色LEDモジュール * 2個
- SFPケージ * 1個
- SFPコネクタ * 1個(SFPコネクタ未実装タイプのみ)
- 連結ソケット(DIP / SMT) 28P * 1個
2組フルセットの場合は、上記セット2個分に加えて、以下のものが同封されています。
- テスト用SFPモジュール * 2個
- テスト用光ファイバー 3m * 1本
- USB書き込み用Type-Cピンヘッダー変換基板 * 1個
- USBケーブル(A-C 2.0) * 1本
万が一、足りない場合や、購入時から破損している場合はお問い合わせください。
SFPコネクタのハンダ付け(SFPコネクタ未実装タイプのみ)
SFPコネクタ未実装タイプの基板は、SFPコネクタが実装されていませんのでハンダ付けをします。
基板をハンダ付けしやすいように固定します。両端になにか台となるようなものを置くと良いでしょう。
SFPコネクタの1ピンの印を合わせ、SFPモジュール挿入方向にソケットが向くように基板に乗せます。
周りのスルーホールにハンダが流れ込んでしまうと、SFPケージを取り付けることが困難になります。
必ず近くのスルーホールをマスキングテープやカプトンテープで覆ってしまってからハンダ付けしましょう。
細かいハンダ付けになるので慣れていない方はHB-L15F、HD-F25等のフラックスを必ずご使用ください。
SFPコネクタのハンダ確認
SFPケージを付けてしまうと内部のSFPコネクタ部分にアクセスできなくなってしまいます。
そのため、ハンダ不良(ブリッジやハンダ不足)が無いかルーペ等で確認しておきましょう。
SFPケージのハンダ付け
SFPケージの足折れ防止のために、樹脂フレーム(ABS)に入れた状態で梱包しています。
樹脂フレームは動作には必要無いものなので、捨ててしまって構いません。
同封するSFPケージにはハンダ付けが必須のタイプと、押し込むだけで固定できるプレスフィットのタイプがあります。
製造ロットによって混ざる可能性があります。すぐ抜けてしまうものはハンダ付け必須です。
プレスフィットは最初に押し込むときはとても固いので注意して押し込んでください。
この基板ではGNDの安定化のためにSFPケージのハンダ付けを推奨しています。
基板サイズに対して部品配置がギリギリなのでベタGNDが犠牲になっています。
また、この基板は意図的にピンヘッダーのスルーホールとパッドを繋げてあるため、ハンダが流れ込まないようにする必要があります。
連結ソケットを取り付ける場合、寸法がギリギリなのでハンダが流れ込まないようにする必要があります。
画像のように、ピンヘッダー部分のスルーホールを覆うのはもちろんのこと、SFPコネクタの足ギリギリまでテープを貼ります。
連結ソケットを取り付ける場合の実装方法
SFPケージと同様に、足折れ防止で連結ソケットは樹脂フレーム(ABS)に入れた状態で梱包しています。
連結ソケットを取り付けるためには、ピンヘッダーを先にハンダ付けする必要があります。
SFPケージと同様にハンダが流れ込まないように、テープを足のギリギリに貼ってハンダ付けをします。
このように裏面に連結ソケットを配置し、ハンダ付けを行います。
しかし、残念ながら付属の連結ソケットはピンヘッダー間に入るサイズではありません。
そのため万力に挟んで足を少し狭めるか、ヤスリで短く削ってからピンヘッダー間に入れてハンダ付けをしてください。
ヤスリで削ったりする場合は、足折れ防止で入れている樹脂フレームごと削ると作業しやすいです。
樹脂フレームは使用時には必要ないものなので雑に扱ってしまって良いです。
ピンヘッダーだけを取り付ける場合の実装方法
ピンヘッダーは表面、裏面どちらに取り付けても良いです。
2.54mmピッチで配置してあるため、ユニバーサル基板上にマウントも可能です。
下に配置する基板と連結した上で、BOOT / RUN だけ操作しやすいように上に配置することも出来ます。
ピンヘッダーを全部同じ向きに出す場合は、画像のようにジャンパーピンで 2P ピンヘッダーを固定するとハンダ付けしやすいです。
ジャンパーワイヤーで接続する前提で、全部表面に実装するのも良いでしょう。
1~4番ピンはUSB接続に使用するため、ピンヘッダーの配置には気をつけてください。
LEDスルーホール部品ハンダ付け
LEDの部品を取り付けていきます。
部品は押さえながら裏面でハンダ付けをします。
ファームウェアの書き込み方法
USB接続用のピンヘッダーをコンピュータのUSBポートと接続します。(ショートや逆接に気をつけてください)
フルセットには画像のようなType-Cピンヘッダー変換基板が同封されています。
ピンソケットをハンダ付けし、USB接続にお役立てください。
コンピュータ内部で使われるUSB2.0ポートピンヘッダーと同じ並びなので、接続には以下のような商品が流用できるでしょう。
- https://www.sanwa.co.jp/product/syohin?code=TK-USB1N
- https://www.ainex.jp/products/usb-007d/
- https://www.amazon.co.jp/dp/B08TBWWRGD/
USBケーブルを切って自作しても良いと思います。
書き込み方法はRaspberry Pi Pico(RP2040)と同様の扱いです。USBを接続すると「RPI-RP2」というドライブが認識されます。
認識されない場合は「BOOT」ボタンを押しながらUSBを抜き差しするか、「BOOT」ボタンを押しながら「RUN」ボタンを1度押します。
(「RUN」ボタンはリセットの役目をするので、USBを抜き差しするのと同じことになります)
「RPI-RP2」ドライブにuf2ファイル(ファームウェア)を書き込めば完了です。
その他、ArduinoIDE等から書き込む方法もあります。
詳細は以下、ダウンロードセクションのリンク先をご覧ください。
ピン配置
裏面にピンに対する信号名が一部書かれています。
「VCC」「5V」は5Vの入力です。DCDCコンバータで3.3Vを生成しています。
「GND」はGNDです。
基板サイズの都合で3.3Vの出力はありません。
外部とのIOは3.3Vレベルなので、レベル変換する場合は外で3.3Vを生成してレベル変換してください。
ピン番号 | 信号名 | 概要 |
---|---|---|
1 | GND | GND に繋がっています。 |
2 | D+ | USB D+ に繋がっています。 |
3 | D- | USB D- に繋がっています。 |
4 | VCC | 5Vの入力です。 |
5 | GND | GND に繋がっています。 |
6 | GPIO 29 | RP2040 の GPIO 29(ADC 3) に繋がっています。アナログ入力が可能。 |
7 | GPIO 28 | RP2040 の GPIO 28(ADC 2) に繋がっています。アナログ入力が可能。 |
8 | GND | GND に繋がっています。 |
9 | GND | GND に繋がっています。 |
10 | GND | GND に繋がっています。 |
11 | GPIO 27 | RP2040 の GPIO 27(ADC 1) に繋がっています。アナログ入力が可能。 |
12 | GND | GND に繋がっています。 |
13 | GND | GND に繋がっています。 |
14 | GPIO 26 | RP2040 の GPIO 26(ADC 0) に繋がっています。アナログ入力が可能。 |
15 | SWDIO | RP2040 の SWDIO に繋がっています。 |
16 | SWCLK | RP2040 の SWCLK に繋がっています。 |
17 | GND | GND に繋がっています。 |
18 | GND | GND に繋がっています。 |
19 | GND | GND に繋がっています。 |
20 | GPIO 5 | RP2040 の GPIO 5 に繋がっています。 |
21 | GND | GND に繋がっています。 |
22 | GND | GND に繋がっています。 |
23 | GPIO 4 | RP2040 の GPIO 4 に繋がっています。 |
24 | GPIO 3 | RP2040 の GPIO 3 に繋がっています。 |
25 | GPIO 2 | RP2040 の GPIO 2 に繋がっています。 |
26 | GND | GND に繋がっています。 |
27 | GPIO 1 | RP2040 の GPIO 1 に繋がっています。 |
28 | GPIO 0 | RP2040 の GPIO 0 に繋がっています。 |
基板スペースの都合で、GPIO 6, 7, 8, 9, 23, 24, 25 は外部に出ていません。
RP2040 Universal SFP Transceiver Module Ver 1.0 では、すべてのIOが出ています。
また、SFPモジュールのI2CにIOエキスパンダーがぶら下がっています。
使い方(2024/09公開時点のファームウェア)
SFPモジュールを接続し、対向と光ファイバーで接続しておきます。
VCCに5V電源を接続します。
対向とのリンクが確立すると、RXの上部赤色LEDが点滅から点灯に変わります。
この時点で、 GPIO 0 に入力された3.3Vデジタル信号が対向の GPIO 1 から出力されます。
サンプリング速度は約1MHzとなっています。
以下が対応表です。
入力 | 出力 |
---|---|
GPIO 0 | GPIO 1 |
GPIO 2 | GPIO 3 |
GPIO 4 | GPIO 5 |
ダウンロード
ファームウェアは以下に置いてあります。
回路図・寸法等のボード情報は以下に置いてあります。
- (公開準備中です)
※以下の基板と共通のファームウェアになっています
購入方法
通信販売
Maker Faire Tokyo 2024のイベント物販を優先します。
在庫が残っていれば10月頭から販売可能なように準備し、こちらに掲載します。
在庫が無い場合は再度生産するため10月末程度になると思われます。
イベント物販
- Maker Faire Tokyo 2024 (2024/09/21 - 2024/09/21) [キット1組 5000円 / 2組ファイバー付き通信フルセット 12000円(特別価格)]
法人でのお問い合せ方法
法人としてのお問い合わせは「つくば科学株式会社」までご連絡ください。
その他情報