HN 日本語サマリー

← 一覧へ戻る
プログラミング

Pico WファームウェアがドライバレスUSB WiFiブリッジ(レイヤー2)を作成

Pico W firmware creates driverless USB WiFi bridge (Layer-2) (cnx-software.com)

39 pointsby whiteblossom3 コメント

要約

Raspberry Pi Pico WをドライバレスUSB WiFiアダプターに変換するオープンソースファームウェア「pico-usb-wifi」が登場しました。このファームウェアは、Pico Wの無線モジュールとUSBインターフェース間に透過的なレイヤー2ブリッジを実装し、Windows、Linux、macOSなどのOSで利用可能にします。低速なUSB 1.1インターフェースの制限によりスループットは平均4.75 Mbits/secですが、緊急時や予備のPico Wがある場合に役立ちます。

全文翻訳

pico-usb-wifiは、Raspberry Pi Pico WをドライバレスUSB WiFiアダプターに変換するオープンソースファームウェアプロジェクトです。これは、USB CDC-NCMをサポートするWindows、Linux、macOSなどのオペレーティングシステムで動作します。 SBCに搭載されているInfineon CYW43439チップは、USBからWiFiへのブリッジとして直接使用することはできません。代わりに、このファームウェアはPico Wの無線モジュールとUSBインターフェース間に透過的なレイヤー2ブリッジを実装します。これは基本的に、イーサネットからWiFiへのゲートウェイ/ブリッジとして機能し、ネットワークからのWiFiパケットをルーティングするために使用されるUSB(いわゆるUSBガジェットモード)を介してイーサネット接続を公開します。 画像ソース: プロジェクトのGitLabリポジトリ pico-usb-wifiの主な特徴: Pico Wの無線およびUSBインターフェース間の透過的なレイヤー2ブリッジ USB CDC-NCMデバイスとして公開 NAT、プライベートサブネット、ポートフォワーディングの設定なしのIPv4およびIPv6 CDC-ACMシリアル経由のアウトオブバンド管理およびデバッグコンソール WPA2-PSKおよびWPA3-SAE認証(およびオープンネットワーク) スループット – 平均4.75 Mbits/sec; 主に12 Mbps USB 1.1インターフェースによって制限されます プロジェクトのリポジトリからのもう一つのAI生成画像、接続を示すもの 低価格帯のWiFi USBドングルが2〜3ドルから入手可能であることを考慮すると、このソリューションの限定的なパフォーマンスでは、WiFi接続が必要で、手元にRaspberry Pi Pico Wが余っている緊急時以外はあまり実用的ではありません。ネイティブUSBポートでパフォーマンスを大幅に向上させることは不可能だと思いますが、開発者(白一百, baiyibai)が指摘しているように、RP2040のプログラマブルI/Oを活用するオプションがあり、Pico-100BASE-TXプロジェクトが開始点になるかもしれません。 WiFi認証情報やその他のパラメータは、管理コンソールを介して設定できます: picocom /dev/ttyACM0 -- pico-usb-wifi v1.1.0 -- profiles: 0 saved (active: none) ssid: (unset) pass: unset country: (unset) debug: off status: associating host IPv4: (not seen yet) (set|scan|list|use|save) # scan [*] scanning... networks (3): 1 MyNetwork -47 dBm a4:b1:c2:d3:e4:f5 2 CoffeeShop -68 dBm 00:11:22:33:44:55 3 Neighbour -81 dBm 9c:65:ee:ef:27:c7 (back|join|scan|live) # join 1 [*] staged -- set pass <password> then save ... profiles: 1 saved (active: 1) ssid: MyNetwork pass: unset ... (set|scan|list|use|save) # set pass hunter2 [*] applying -- re-associating ... (set|scan|list|use|save) # save [*] saved to flash 12345678910111213141516171819202122232425262728 picocom /dev/ttyACM0 -- pico-usb-wifi v1.1.0 -- profiles: 0 saved (active: none) ssid: (unset) pass: unset country: (unset) debug: off status: associating host IPv4: (not seen yet)(set|scan|list|use|save) # scan[*] scanning... networks (3): 1 MyNetwork -47 dBm a4:b1:c2:d3:e4:f5 2 CoffeeShop -68 dBm 00:11:22:33:44:55 3 Neighbour -81 dBm 9c:65:ee:ef:27:c7(back|join|scan|live) # join 1[*] staged -- set pass <password> then save... profiles: 1 saved (active: 1) ssid: MyNetwork pass: unset...(set|scan|list|use|save) # set pass hunter2[*] applying -- re-associating...(set|scan|list|use|save) # save[*] saved to flash /dev/ttyACM0管理ポートの他に、/tty/ttyACM1ポートがデバッグに使用されます。Pico Wボード用に設計されていますが、後者のためにコンパイルすればPico 2 Wでも動作する可能性があります(未確認)。 このプロジェクトはClaude Code(約100万トークン使用)で設計されており、ソースコード(PicoSDKベースのC言語)、仕組みに関する説明、ソースからのファームウェアのビルド手順はGitLabで見つけることができます。Alternatively、pico-usb-wifi.uf2バイナリをダウンロードしてボードに直接インストールすることもできます。 Via Adafruit Jean-Luc Aufranc (CNXSoft) Jean-Lucは2010年にCNX Softwareを副業として開始し、ソフトウェアエンジニアリングマネージャーの職を辞めた後、2011年に毎日ニュースとレビューをフルタイムで執筆し始めました。 共有: