chrome.serial

説明

シリアルポートに接続されているデバイスの読み取りと書き込みを行うには、chrome.serial API を使用します。

権限

serial

ConnectionInfo

プロパティ

  • bitrate

    数値(省略可)

    ConnectionOptions.bitrate をご覧ください。標準以外のビットレートが使用されている場合や、基盤となるデバイスのクエリ中にエラーが発生した場合、このフィールドは省略されるか不正確になることがあります。

  • bufferSize

    数値

    ConnectionOptions.bufferSizeを見る

  • connectionId

    数値

    シリアルポート接続の ID。

  • ctsFlowControl

    ブール値(省略可)

    ConnectionOptions.ctsFlowControl をご覧ください。基盤となるデバイスのクエリ中にエラーが発生した場合、このフィールドは省略されることがあります。

  • dataBits

    DataBits オプション

    ConnectionOptions.dataBits をご覧ください。基盤となるデバイスのクエリ中にエラーが発生した場合、このフィールドは省略されることがあります。

  • name

    文字列

    ConnectionOptions.nameを見る

  • parityBit

    ParityBit オプション

    ConnectionOptions.parityBit をご覧ください。基盤となるデバイスのクエリ中にエラーが発生した場合、このフィールドは省略されることがあります。

  • 一時停止

    ブール値

    接続が onReceive イベントを発生させないようにブロックされているかどうかを示すフラグ。

  • 永続

    ブール値

    ConnectionOptions.persistentを見る

  • receiveTimeout

    数値

    ConnectionOptions.receiveTimeoutを見る

  • sendTimeout

    数値

    ConnectionOptions.sendTimeoutを見る

  • stopBits

    StopBits(省略可)

    ConnectionOptions.stopBits をご覧ください。基盤となるデバイスのクエリ中にエラーが発生した場合、このフィールドは省略されることがあります。

ConnectionOptions

プロパティ

  • bitrate

    数値(省略可)

    接続を開くためにリクエストされたビットレート。最も幅広いハードウェアとの互換性を確保するために、この数値は、一般的に利用可能なビットレート(110、300、1200、2400、4800、9600、14400、19200、38400、57600、115200 など)のいずれかと一致する必要があります。もちろん、たとえポート自体がビットレートをサポートしていても、シリアルポートに接続されたデバイスが要求されたビットレートをサポートする保証はありません。デフォルトでは 9600 が渡されます。

  • bufferSize

    数値(省略可)

    データの受信に使用されるバッファのサイズ。デフォルト値は 4096 です。

  • ctsFlowControl

    ブール値(省略可)

    RTS/CTS ハードウェア フロー制御を有効にするかどうかを示すフラグ。デフォルトは false です。

  • dataBits

    DataBits オプション

    デフォルトでは "eight" が渡されます。

  • name

    文字列(省略可)

    接続に関連付けるアプリケーション定義の文字列。

  • parityBit

    ParityBit オプション

    デフォルトでは "no" が渡されます。

  • 永続

    ブール値(省略可)

    アプリが停止したときに接続を開いたままにするかどうかを示すフラグ(アプリのライフサイクルを管理するをご覧ください)。デフォルト値は「false」です。アプリケーションが読み込まれたら、Persistent=true で開かれたシリアル接続は、getConnections でフェッチできます。

  • receiveTimeout

    数値(省略可)

    onReceiveError イベントが「タイムアウト」になるまで新しいデータを待機する最大時間(ミリ秒単位)。エラーが発生します。ゼロの場合、接続に対して受信タイムアウト エラーは発生しません。デフォルトは 0 です。

  • sendTimeout

    数値(省略可)

    send オペレーションが完了するのを待機する最大時間(ミリ秒単位)。この時間を過ぎると、「タイムアウト」でコールバックが呼び出されます。エラーが発生します。ゼロの場合、送信タイムアウト エラーはトリガーされません。デフォルトは 0 です。

  • stopBits

    StopBits(省略可)

    デフォルトでは "one" が渡されます。

DataBits

列挙型

「seven」

「8」

DeviceControlSignals

プロパティ

  • クリック率

    ブール値

    CTS(送信クリア)。

  • dcd

    ブール値

    DCD(Data Carrier Detect)または RLSD(Receive Line Signal/ Detect)。

  • dsr

    ブール値

    DSR(データセット準備完了)。

  • ブール値

    RI(Ring Indicator)

DeviceInfo

プロパティ

  • displayName

    文字列(省略可)

    ホストドライバからクエリできる場合は、基盤となるデバイスの人が読める形式の表示名。

  • パス

    文字列

    デバイスのシステムパス。このデバイスに接続するには、これを path 引数として chrome.serial.connect に渡す必要があります。

  • productId

    数値(省略可)

    USB プロダクト ID(基盤となるデバイスを特定できる場合)。

  • vendorId

    数値(省略可)

    PCI または USB のベンダー ID(基盤となるデバイスのベンダー ID を特定できる場合)。

HostControlSignals

プロパティ

  • dtr

    ブール値(省略可)

    DTR(データ端末準備完了)。

  • RTS

    ブール値(省略可)

    RTS(送信リクエスト)。

ParityBit

列挙型

"no"

"odd"

「均等」

ReceiveError

列挙型

"disconnected"
接続が切断されました。

"timeout"
receiveTimeout ミリ秒間データを受信していません。

"device_lost"
デバイスがホストから切断された可能性があります。

"break"
デバイスがブレーク条件を検出しました。

"frame_error"
デバイスでフレーミング エラーが検出されました。

"overrun"
文字バッファのオーバーランが発生しました。次の文字は失われます。

"buffer_overflow"
入力バッファ オーバーフローが発生しました。入力バッファにスペースがないか、ファイルの終わり(EOF)文字の後に文字が受信されました。

"parity_error"
デバイスでパリティ エラーが検出されました。

"system_error"
システムエラーが発生したため、接続を復元できない可能性があります。

ReceiveErrorInfo

プロパティ

  • connectionId

    数値

    接続 ID。

  • エラー

    問題の内容を示すエラーコード。

ReceiveInfo

プロパティ

  • connectionId

    数値

    接続 ID。

  • データ

    ArrayBuffer

    受信したデータです。

SendError

列挙型

"disconnected"
接続が切断されました。

"pending"
送信はすでに保留中です。

"timeout"
送信がタイムアウトしました。

"system_error"
システムエラーが発生したため、接続を復元できない可能性があります。

SendInfo

プロパティ

  • bytesSent

    数値

    送信されたバイト数。

  • エラー

    SendErrorオプション

    エラーが発生した場合のエラーコード。

StopBits

列挙型

"one"

"two"

メソッド

clearBreak()

<ph type="x-smartling-placeholder"></ph> 約束 Chrome 45 以降 をご覧ください。
chrome.serial.clearBreak(
  connectionId: number,
  callback?: function,
)

特定の接続の文字転送を復元し、伝送ラインを非中断状態に設定します。

パラメータ

  • connectionId

    数値

    接続の ID。

  • callback

    関数(省略可)

    callback パラメータは次のようになります。

    (result: boolean) => void

    • 件の結果

      ブール値

戻り値

  • Promise&lt;boolean&gt;

    Chrome 117 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

connect()

<ph type="x-smartling-placeholder"></ph> 約束
chrome.serial.connect(
  path: string,
  options?: ConnectionOptions,
  callback?: function,
)

指定したシリアルポートに接続します。

パラメータ

  • パス

    文字列

    開くシリアルポートのシステムパス。

  • オプション

    ConnectionOptions(省略可)

    ポート構成オプション。

  • callback

    関数(省略可)

    callback パラメータは次のようになります。

    (connectionInfo: ConnectionInfo) => void

戻り値

  • Promise&lt;ConnectionInfo&gt;

    Chrome 117 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

disconnect()

<ph type="x-smartling-placeholder"></ph> 約束
chrome.serial.disconnect(
  connectionId: number,
  callback?: function,
)

シリアルポートの接続を解除します。

パラメータ

  • connectionId

    数値

    開かれている接続の ID。

  • callback

    関数(省略可)

    callback パラメータは次のようになります。

    (result: boolean) => void

    • 件の結果

      ブール値

戻り値

  • Promise&lt;boolean&gt;

    Chrome 117 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

flush()

<ph type="x-smartling-placeholder"></ph> 約束
chrome.serial.flush(
  connectionId: number,
  callback?: function,
)

指定された接続の入力バッファと出力バッファ内のすべてのバイトをフラッシュします。

パラメータ

  • connectionId

    数値

  • callback

    関数(省略可)

    callback パラメータは次のようになります。

    (result: boolean) => void

    • 件の結果

      ブール値

戻り値

  • Promise&lt;boolean&gt;

    Chrome 117 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getConnections()

<ph type="x-smartling-placeholder"></ph> 約束
chrome.serial.getConnections(
  callback?: function,
)

アプリケーションが所有する、現在開いているシリアルポート接続のリストを取得します。

パラメータ

  • callback

    関数(省略可)

    callback パラメータは次のようになります。

    (connectionInfos: ConnectionInfo[]) => void

戻り値

  • Promise&lt;ConnectionInfo[]&gt;

    Chrome 117 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getControlSignals()

<ph type="x-smartling-placeholder"></ph> 約束
chrome.serial.getControlSignals(
  connectionId: number,
  callback?: function,
)

指定された接続の制御シグナルの状態を取得します。

パラメータ

  • connectionId

    数値

    接続の ID。

  • callback

    関数(省略可)

    callback パラメータは次のようになります。

    (signals: DeviceControlSignals) => void

戻り値

  • Promise&lt;DeviceControlSignals&gt;

    Chrome 117 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getDevices()

<ph type="x-smartling-placeholder"></ph> 約束
chrome.serial.getDevices(
  callback?: function,
)

システムで使用可能なシリアル デバイスに関する情報を返します。このリストは、このメソッドが呼び出されるたびに再生成されます。

パラメータ

  • callback

    関数(省略可)

    callback パラメータは次のようになります。

    (ports: DeviceInfo[]) => void

戻り値

  • Promise&lt;DeviceInfo[]&gt;

    Chrome 117 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getInfo()

<ph type="x-smartling-placeholder"></ph> 約束
chrome.serial.getInfo(
  connectionId: number,
  callback?: function,
)

指定した接続の状態を取得します。

パラメータ

  • connectionId

    数値

    開かれている接続の ID。

  • callback

    関数(省略可)

    callback パラメータは次のようになります。

    (connectionInfo: ConnectionInfo) => void

戻り値

  • Promise&lt;ConnectionInfo&gt;

    Chrome 117 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

send()

<ph type="x-smartling-placeholder"></ph> 約束
chrome.serial.send(
  connectionId: number,
  data: ArrayBuffer,
  callback?: function,
)

指定された接続にデータを書き込みます。

パラメータ

  • connectionId

    数値

    接続の ID。

  • データ

    ArrayBuffer

    送信するデータ。

  • callback

    関数(省略可)

    callback パラメータは次のようになります。

    (sendInfo: SendInfo) => void

戻り値

  • Promise&lt;SendInfo&gt;

    Chrome 117 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

setBreak()

<ph type="x-smartling-placeholder"></ph> 約束 Chrome 45 以降 をご覧ください。
chrome.serial.setBreak(
  connectionId: number,
  callback?: function,
)

指定された接続で文字伝送を一時停止し、clearBreak が呼び出されるまで伝送ラインを中断状態にします。

パラメータ

  • connectionId

    数値

    接続の ID。

  • callback

    関数(省略可)

    callback パラメータは次のようになります。

    (result: boolean) => void

    • 件の結果

      ブール値

戻り値

  • Promise&lt;boolean&gt;

    Chrome 117 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

setControlSignals()

<ph type="x-smartling-placeholder"></ph> 約束
chrome.serial.setControlSignals(
  connectionId: number,
  signals: HostControlSignals,
  callback?: function,
)

所定の接続に制御信号の状態を設定します。

パラメータ

  • connectionId

    数値

    接続の ID。

  • シグナル

    デバイスに送信されるシグナルのセットが変更されます。

  • callback

    関数(省略可)

    callback パラメータは次のようになります。

    (result: boolean) => void

    • 件の結果

      ブール値

戻り値

  • Promise&lt;boolean&gt;

    Chrome 117 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

setPaused()

<ph type="x-smartling-placeholder"></ph> 約束
chrome.serial.setPaused(
  connectionId: number,
  paused: boolean,
  callback?: function,
)

開いている接続を一時停止または一時停止解除します。

パラメータ

  • connectionId

    数値

    開かれている接続の ID。

  • 一時停止

    ブール値

    一時停止するか一時停止解除するかを示すフラグ。

  • callback

    関数(省略可)

    callback パラメータは次のようになります。

    () => void

戻り値

  • 約束 <void>

    Chrome 117 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

update()

<ph type="x-smartling-placeholder"></ph> 約束
chrome.serial.update(
  connectionId: number,
  options: ConnectionOptions,
  callback?: function,
)

開いているシリアルポート接続でオプション設定を更新します。

パラメータ

  • connectionId

    数値

    開かれている接続の ID。

  • オプション

    ポート構成オプション。

  • callback

    関数(省略可)

    callback パラメータは次のようになります。

    (result: boolean) => void

    • 件の結果

      ブール値

戻り値

  • Promise&lt;boolean&gt;

    Chrome 117 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

イベント

onReceive

chrome.serial.onReceive.addListener(
  callback: function,
)

接続からデータを読み取ったときに発生するイベント。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

    (info: ReceiveInfo) => void

onReceiveError

chrome.serial.onReceiveError.addListener(
  callback: function,
)

ランタイムがシリアルポートでデータを待機中にエラーが発生したときに発生するイベント。このイベントが発生すると、接続が paused に設定できます。"timeout" エラーが発生しても接続は一時停止されません。

パラメータ