# Serial Monitor & Plotter

> Chromeでシリアルポートを開き、双方向ターミナルとHEXダンプ、Arduinoシリアルプロッタ形式を自動判別するライブプロットを表示。CSV書き出し対応、アップロード不要。

- URL: https://bytescope.dev/ja/serial-monitor/
- Locale: ja · Also: [en](https://bytescope.dev/en/serial-monitor.md) · [zh-Hant](https://bytescope.dev/zh-Hant/serial-monitor.md)
- Runs: Web Serial でお使いの機器とローカルに通信します — アップロードは一切ありません。
- Requires: Chrome, Edge or Opera on desktop (Web Serial API). Not Firefox, Safari or any mobile browser; the page still renders the documentation and a support matrix there.
- Updated: 2026-09-08

## What it does

このシリアルモニタはWeb Serial APIでボードへ直接つながります。ChromeやEdgeが、USB・Bluetoothシリアル機器へのアクセスを求めるサイトに使うのとまったく同じ権限モデルです。ボーレートを選び（任意の値も入力できます）、データビット、ストップビット、パリティ、フロー制御を指定すれば、数クリックでポートが開きます。インストールは不要で、常駐サービスも動きません。タブを閉じれば接続もそこで切れます。

ターミナルは双方向です。1行入力してEnter（または送信ボタン）を押せば、そのままボードへ書き込めます。行末文字は改行・復帰・両方・なしから選べ、ボード側がエコーを返さない場合でも入力内容が見えるローカルエコーも用意しています。タイミングの不具合を追うときは行ごとのタイムスタンプを有効にし、表示はプレーンテキスト、HEXダンプ（`/hex-editor`と1バイトずつ同じレイアウト）、そしてバイナリプロトコルと読めるログ行が混在するときの混在ビューを切り替えられます。

### プロッタが解釈できる形式

数値を流し込むと、プロッタが形式を自動判別します。素のCSV（`12,34,56`）、Arduinoシリアルプロッタ流のラベル付きペア（`temp:25.3 hum:60`）、空白区切りの数値だけの行に対応します。認識された各チャンネルには個別の色、最小値・最大値・平均のライブ表示、ワンクリックで非表示や改名ができる切り替えが付きます。IDE内蔵のプロッタと違い、表示中のデータセット全体をCSVファイルとして書き出せ、グラフそのものもPNGで保存できます。

### 送信マクロ、セッション記録、検索

よく送るコマンドは、名前付きのマクロボタンとして保存できます。ATコマンド一式、デバッグメニュー、リセット手順など、このブラウザに残るので次回もそのまま押せます。すべてのセッションは記録して`.txt`／`.log`ファイルとしてダウンロードでき、ターミナルの検索・フィルタ欄は単純な部分一致でも正規表現でも受け付けるので、長いログでも後から追いやすいままです。

### 対応ブラウザ

Web SerialはChromium系専用のAPIです。デスクトップのChrome、Edge、Opera、そしてAndroid版Chromeはバージョン148以降で使えます。SafariとFirefoxは実装しておらず、実装予定も公表されていません。そのため本ツールは、それらのブラウザでは動かないボタンを見せる代わりに、理由をはっきり説明します。上の対応表には、いま使っているブラウザで実際に検出された内容がそのまま並びます。

## Limits

Does not work over Bluetooth or network serial, and does not flash firmware; it reads and writes a serial port.

## FAQ

### どのブラウザでシリアルポートを開けますか？

デスクトップのChrome、Edge、Opera、そしてAndroid版のChrome 148以降です。SafariとFirefoxはWeb Serial APIを実装しておらず、追加時期も公表されていません。そのためこのページでは、それらのブラウザで押しても動かない接続ボタンを出す代わりに、正直な対応状況の表とわかりやすい説明を表示します。

### シリアル通信のデータがどこかにアップロードされますか？

いいえ。接続はすべてブラウザのWeb Serial APIを通して行われ、バイトはページと機器の間を直接流れます。送受信した内容がサーバーへ送られることはありません。サイト側の解析はツールを使ったという事実だけを記録し、データそのものは一切記録しません。

### 数値でない行はプロッタでどう扱われますか？

プロットの対象からは外れますが、ターミナルには変わらず表示されます。デバッグ用のテキストとセンサーの値を同じシリアル回線に混ぜて出すボードでも、特別なモードは要りません。CSV、ラベル付きペア、空白区切りの数値として解釈できた行だけがプロットのサンプルになります。

### 同じボードへ、毎回選び直さずに再接続できますか？

はい。一度サイトにポートの許可を与えると、ブラウザがそれを記憶します。このページはWeb Serial APIの`getPorts()`で以前に許可した機器を一覧し、ワンクリックで再接続できます。別の機器につなぎたいとき以外、選択ダイアログは出ません。

### DTRとRTSの切り替えは何のためにありますか？

ほとんどのUSBシリアル変換が備える2本のハードウェア制御線です。Arduino互換ボードの多くはDTRをリセットピンにつないでいるため、LowからHighに切り替えると、Arduino IDEが書き込み前に行うのと同じようにブートローダへリセットがかかります。USBケーブルに触らずにボードの再起動を観察したいときに便利です。

### ここから機器へファイルを送れますか？

はい。素のシリアル接続でXMODEMやYMODEMを前提とする古いボードやブートローダのために、両プロトコルの送信機能を備えています。プロトコルとファイルを選ぶと、送信済みブロック数や再送回数といった進捗がパネルにリアルタイムで表示されます。

### 生のバイト列だけでなく、特定のプロトコルをデコードできますか？

はい。既定の生の行表示に加えて、NMEA 0183（GPS／GNSSセンテンス）のデコーダを内蔵し、各フィールドに自分で名前を付けられる区切り文字テンプレートも用意しています。`/hex-editor`のヘッダーテンプレートと同じ考え方を、バイナリヘッダーではなくテキスト行に当てはめたものです。

## Related tools

- [ESP Firmware Flasher](https://bytescope.dev/ja/esp-flasher.md) — ボードに書き込んだら、ここへ戻って起動の様子を見る →
- [My Computer Specs](https://bytescope.dev/ja/my-computer-specs.md) — このブラウザが使っている GPU、CPU のスレッド数、メモリ、ハードウェアアクセラレーションの状態をまとめて確認。
