【うぇぶしりあるえーぴーあい】

Web Serial API とは?

最終更新:
💡 Webページと機器をつなぐ、シリアル通信の窓口

Web Serial APIは、Webページからシリアルポートを通じて外部機器と通信するAPIです。USBシリアルの接続例、利用者の許可、対応ブラウザと通信条件を説明します。

📌 このページのポイント
Webページから、機器と通信する① 利用者がポートを選んで許可安全なコンテキスト・対応環境Webページ機器マイコン等送信受信USBシリアル接続などを利用通信速度と命令は、機器の仕様に合わせる
USBケーブルで接続する機器の例。Web Serial APIが、物理的な接続や機器側の対応を不要にするわけではありません。
ひよこ ひよこ
ブラウザからArduinoと通信できる?
ペンギン先生 ペンギン先生
対応するブラウザと機器なら、Webページからデータを送受信できるよ。USBケーブルで接続してシリアルポートとして認識される機器が一例。Web Serial APIがケーブルを不要にする、という意味ではないんだ。
ひよこ ひよこ
機器なら、何でもつながる?
ペンギン先生 ペンギン先生
シリアルポートとして扱える機器が対象だよ。WebUSBやWebHIDとは別のAPI。ブラウザやOS、ドライバー、機器側の対応を確認する必要があるし、シリアル通信できても、その機器が理解する命令を送らないと操作できないね。
ひよこ ひよこ
サイトが勝手に、機器へ命令できる?
ペンギン先生 ペンギン先生
初めての許可を求めるときは、ボタンを押すなどの操作からrequestPort()を呼び、利用者がポートを選ぶ。許可済みのポートはgetPorts()で取得できるよ。安全なコンテキストも必要。対応や権限を確認し、信頼するページに必要な機器だけを許可しよう。
ひよこ ひよこ
ポートを選べば、すぐ通信できる?
ペンギン先生 ペンギン先生
ポートを開き、機器の仕様に合う通信速度などを設定するよ。それからデータを読み書きする。速度や送信内容が違えば正しく通信できないので、機器の資料を見よう。PWAやElectronは必須ではなく、対応する通常のWebページでも利用できるんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Web Serial API」って出てきたら「Webページからシリアル機器と通信するAPI」と思えばだいたいOK!
📖 おまけ:英語の意味
「Web Serial API」 = Webのシリアル通信API
💬 ブラウザから機器のシリアルポートへアクセスする仕組みだよ。WebUSBとは使う窓口が違うんだ。

参考資料

← 用語集にもどる