Linux

【無線LAN】IntelのN-6300という無線LANカードの基礎知識、miniPCIeの無線LANカードを組み込みデバイスにつなぐ方法

【※ 当記事は2020年7月2日時点の情報です】

ペイヴメント(@pavement1234)です。

エンジニア
エンジニア
古いパソコンから抜き取ったN-6300というIntelの無線LANカードを
例えばRaspberry Piみたいな組込デバイスに接続したい。

バージョン情報
Linux Kernel 3.14

IntelのN-6300という無線LANカード

古いパソコンから抜き取ったN-6300というIntelの無線LANカード。
Intel公式サイトにN-6300の仕様が載ってます。
当たり前ですがディスコン(生産中止)です。

発売日:2011
ステータス:Discontinued
アンテナ:3×3
バンド: 2.4 GHz/5 Ghz
最高速:450 Mbps
Wi-Fi認定: 802.11a/g/n
内蔵Bluetooth:いいえ
コンプライアンス: PCI, CISP, FIPS, FISMA
ボード・フォーム・ファクター:PCIe Half MiniCard(要はminiPCIe)
システムインターフェースタイプ:PCIe
MU-MIMO:いいえ

見た目はこんな感じ。
とりあえずMACアドレスはマスクしておきました。

なんかシリアルNo的なものたちが何を示すのか、少し調べてみました。
イマイチわからないのは飛ばしました。

D P/N:04W00N0 REV A05
DELLで番号が振りなおされてる模様。
そういえば、この無線LANカードはDELLのPCから引っこ抜いたものだった
CN-04W00N-14084-3C8-07VO-A05
4W00Nが部品番号みたい。
QRコードはこれを指してる
MAC:xx xx xx xx xx xx
言わずもがなMACアドレスですね
TA:E67160-013
いまいちわからん。誰か教えてくれ

組み込みデバイスにつなぐには

IntelのN-6300というminiPCIeの無線LANカード。
これをminiPCIeで組込ボードに接続するにはどうすればよいか?

①Raspberry Pi 3 B+にはminiPCIeがついてない

薄々気づいてましたが
Raspberry Pi 3 B+にはN-6300を接続するためのminiPCIeがありません。
困ったなぁ…。
昔持ってたけど断捨離で捨てちゃったIntelのGalileo(廃版)には
miniPCIeが付いてたんですよね。
今持ってるボードでPCIeがつながるものが無いか調べてみたら
Jetson Nanoが対応してそうですがM.2なので今回はパス。
i.MX6 Sabre LiteはminiPCIeの変換ボードがありそうということが分かったので
今回はi.MX6 Sabre Liteを選択。

Raspberry Pi 3 B+ なし
Raspberry Pi 1 なし
Dragonboard 410c なし
Altera DE0 nano SoC なし
NXP i.MX6 Sabre Lite(Boundary Device)あり(但し変換ボードが必要)
NVIDIA Jetson Nano あり(但しM.2)

ちなみにJetson NanoのM.2はこんな感じ。

ちなみに、M.2(エムドットツー)って
旧称:NGFF(Next Generation Form Factor)だそうで。

M.2(エムドットツー)
(旧称: Next Generation Form Factor、NGFF)は、
コンピュータの内蔵拡張カードのフォームファクタと
接続端子について定めた規格である。
M.2はmSATAの後継として開発された。
機能性に優れカードの幅や長さについてもより柔軟性を持つことから、
SSDやそれを組み込むウルトラブックや
タブレットコンピュータなどの小さいデバイスに適した規格とされる。

M.2は本質的にはSATA Expressの小型版といえる。
M.2の提供するバスインターフェイスは
論理的にはSATA Expressの上位互換である。
M.2はSATA Expressの持つPCI ExpressとSATA 3.0との互換性に加えて、
USB 3.0との内部互換性を備える。
M.2端子には一つ以上の切り欠きがあり、
組み合わせで機器のタイプを示す。
M.2の拡張カードには、
Wi-Fi、Bluetooth、GPS、NFC、デジタルラジオ、WiGig、WWAN、SSDなど
様々な機能を持たせることができる。
バス方式はPCI Express、Serial ATA 3.0、
USB 3.0(USB 2.0と下位互換)の三種類が提供される。
SATA規格ではrevision 3.2で新たに
M.2についてのハードウェアレイアウトを定めている。

M.2は4つのPCI Expressレーンと
1つのSATA 3.0 6Gbpsポートを一つの端子内に備えており、
PCI Express機器とSATAストレージ機器を
M.2カードとして接続することができる。
PCI Expressレーンはストレージ機器から見て
通常のPCI Expressと全く同じに、追加の抽象化なく接続できる。
2013年12月、PCI-SIG(英語版)は、
M.2規格 1.0でM.2について定めている。

②i.MX6 Sabre LiteにPCIeを増設するには?

さて、i.MX6 Sabre Lite。
要は下の写真の黄色枠にピンヘッダが出てるので、
ここからminiPCIeに変換すれば良いのでしょう。
しかしPCIeみたいな高速I/Fをこんなピンでつないで
信号品質を保てるのでしょうか…。

ちょっと調べたら出てきた。
Boundary Devices ドーターカードとOEMボード

 Boundary Devices Nit6X_PCIEに詳細が載ってる。

この写真はだけでは良く分からないので…。

 Nit6X_PCIE データシートを見たところ違う画像がありました。
通販サイトの画像と違うがどっちが正しいのでしょう。
ちなみに私が持ってるSabre LiteとNit6S_PCIEをつなぐには、
ジャンパ線が必要みたいです。

更にNit6X_PCIE(公式)を見るとこんな画像が出てきます。
なんか通販サイトの画像と違うけど、
型番は一緒だしデータシートの画像と同じなのでこれが正しいんですかね?

mPCIE daughter board for i.MX6 boards Compatible with Nitrogen6X and BD-SL-i.MX6 boardと書いてあり一安心
(取り急ぎポチりました)。

③USB3.0からminiPCIeを引っ張れないか?

とりあえずi.MX6ボードにminiPCIeを拡張できる目途が立ったのですが、
USB 3.0規格のFAQ(1) ―― 信号波形からSuperSpeed USBを理解しよう
にある通り、
USB3.0はPCIeと物理層が一緒のようです。
それならUSB3.0に対応してるRaspberry Pi 4のUSB3.0ポートを
miniPCIeに変換できるアダプタは無いものか?

色々調べましたが現時点(2019年9月)ではドンピシャな製品は無いみたいですが、
類似のことを考えた人がいるのを発見。
ina_aniさんのツイート
を見ると
Raspberry Pi 4のUSBはPCI Express接続なのでUSBコントローラを剥がしてPCIeボードを繋いだ様子
ツワモノですね。

ツイートから飛ぶと
HACKADAY
というサイトのGiving The Pi 4 PCI Expressという記事が出てきます。
現状ここまでやりたいわけではありません。
単にUSB3.0からminiPCIeが引っ張れればよいのです。
まぁいつか製品化する人が出てくるだろうと思うので、
しばし待つことにしました。

まとめ

IntelのN-6300という無線LANカードの基礎知識、
miniPCIeの無線LANカードを組み込みデバイスにつなぐ方法を調査しました。

ABOUT ME
ペイヴメント
ペイヴメントのエンジニア塾(当ブログ)では20年以上の経験から得られたプログラミング系ノウハウについてベテランにも満足して頂けるような内容の濃いコンテンツを初心者にも分かりやすい形で日々発信しています。【経歴】ベンチャーのソフトハウスで4年勤務後、精密機器メーカーのソフト開発部門に勤務し今に至ります。
error: Content is protected !!