Firefox 151がWeb Serial API対応、ブラウザからマイコンや3Dプリンタを直接操作
Firefox 151でWeb Serial APIがサポートされ、ブラウザからマイコンや3Dプリンタなどのシリアル機器を直接操作できるようになった。Adafruitとの協業によるテストも行われている。
Firefoxのデスクトップ版がついにWeb Serial APIに対応した。MozillaはFirefox 151 for Desktopにて、Web Serial APIのサポートを開始したと発表した。これにより、Webアプリケーションがネイティブソフトウェアを介さずに、シリアル接続されたハードウェア機器と直接通信できるようになる。
Web Serial
APIとは何か Web Serial APIは、WebサイトがJavaScriptを使用してシリアルデバイスと読み書きを行うことを可能にするWeb APIである。現代のコンピュータには一般的にシリアルポートが搭載されていないが、USBポート経由で接続されたシリアルデバイスやBluetoothでペアリングされたデバイスは、オペレーティングシステム上でシリアルポートとして認識される。Web Serial APIは、これらのデバイスとWebプラットフォームを通じて通信する手段を開発者に提供する。 対応機器は多岐にわたる。マイクロコントローラ、開発ボード、3Dプリンタ、電力計、そしてその他のシリアル接続ハードウェアが含まれる。具体的には、EspressifのESPベースのボード(人気のESP32チップを含む)、Raspberry Pi Pico、3Dプリンタ、LEGOデバイスなど、多くの機器が対象となる。
ホビイストやメイカーにとっての意義 この機能の登場により、Firefoxはハードウェアプロジェクトに携わる人々にとってより実用的なブラウザとなる。
ホビイスト、ハードウェアハッカー、教育者、メイカー、開発者にとって、ホームオートメーションからハードウェアのプロトタイピング、3Dプリントまで、幅広いユースケースで活用が期待される。 特に注目すべきは、オープンソースハードウェアとSTEM教育のリーダー的存在であるAdafruitとの協業だ。MozillaはAdafruitと連携し、Firefoxの実装をこのコミュニティで一般的に使用されるハードウェアワークフローに対してテストした。
Adafruitとの協業とCircuitPython
AdafruitはWeb Serialの価値を実証してきた組織の一つである。同社は、Web Serialを活用してデバイスにファームウェアを配信することで、CircuitPythonのインストールを迅速かつ簡単にしている。CircuitPythonは、小さなマイクロコントローラボード上でPythonプログラムを実行するための環境だ。 FirefoxでCircuitPythonファームウェアをインストールする場合、Adafruit Web Serial Toolの使用が推奨されている。CircuitPythonサイト上のOPEN INSTALLER方式ではなく、専用ツールを利用するのが望ましいとされている。 具体的な使用例として、AdafruitのESP32-S2ベースのボードでは、Webコードから送信されたメッセージをWeb Serialを通じてデバイス上に直接表示できる。ローカルのWebページからWeb Serialを使用してメッセージを送信し、CircuitPythonのcode.pyファイルを実行しているデバイスで受信するという流れだ。
Mozillaエンジニアによるデモプロジェクト
MozillaのエンジニアであるAlex Franchukは、Web Serialとエレクトロニクスを組み合わせた面白いプロジェクトを作成している。Page Playgroundと呼ばれるこのデモは、エレクトロニクスとWeb編集を融合させた機能的で楽しいデバイスだ。 これらの小さな安価なマイクロコントローラボードで独自のコードを実行するためのツールは数多く存在するが、Web Serialの登場により、それらをコンピュータに接続し、Webベースのユーザーインターフェースを通じて対話することがこれまで以上に容易になった。
ブラウザ間の機能差異という文脈 Web Serial
APIは以前からChromiumベースのブラウザ(Google Chrome、Microsoft Edgeなど)ではサポートされていたが、Firefoxでは長らく実装されていなかった機能の一つである。今回の対応により、Firefoxユーザーもハードウェア開発の現場でChromium系ブラウザに依存する必要がなくなる。 Mozillaのこの動きは、Firefoxが開発者コミュニティの多様なニーズに応えようとする姿勢を示すものと言える。特にハードウェア開発やIoT分野でのWeb技術の活用が拡大する中、主要ブラウザ間でのAPI互換性が高まることは、Webプラットフォーム全体の健全性にとって重要な意味を持つ。 Firefox 151以降、デスクトップ版Firefoxユーザーは、Web Serialに対応したWebアプリケーションを通じて、マイコンや3Dプリンタなどのハードウェアとの接続をブラウザ上で直接行えるようになった。詳細な技術情報は、Mozilla Developer Network(MDN)のドキュメントで確認できる。 --- よくある質問 Q: Web Serial APIはスマートフォン版のFirefoxでも使えますか? A: 今回の発表ではFirefox 151 for Desktop(デスクトップ版)に限定されています。モバイル版Firefoxでの対応については言及されていないため、現時点ではデスクトップ環境でのみ利用可能です。 Q: どのような機器がWeb Serialに対応していますか? A: ESP32などのEspressifベースのボード、Raspberry Pi Pico、3Dプリンタ、LEGOデバイスなど、シリアル通信に対応しUSBまたはBluetoothで接続された幅広い機器が対象となります。AdafruitのCircuitPython対応デバイスも含まれます。 Q: 既存のChromeやEdgeでのWeb SerialアプリケーションはFirefoxでも動作しますか? A: Web Serial API自体は標準化されたWeb APIであるため、仕様に準拠して開発されたWebアプリケーションはFirefoxでも動作する可能性が高いです。ただし、ブラウザ間で細かい実装の差異がある場合もあるため、個別のアプリケーションでの動作確認が必要です。
コメント