Arduino や ESP32 が USB シリアルに流している値を、このページだけで表示・グラフ化・CSV 保存できます。Chrome / Edge / Firefox 151 以降のデスクトップ版で動作し、インストールは不要です。実機がなくても「デモ開始」で動きを確かめられます。
🔌 使い方
- Arduino や ESP32 を USB でつなぎます(Arduino IDE のシリアルモニタは閉じておいてください。ポートは1つのアプリしか開けません)
- ボーレートをスケッチの
Serial.begin()と同じ値に合わせます - 「接続」を押すと、ブラウザがポート選択のダイアログを出します。使うポートを選んで許可します
- 受信した行がコンソールに流れます。行が数値の並びなら、上のグラフに折れ線として出ます
📊 グラフになるデータの形
改行区切りで、1行に数値を並べて送ってください。区切りはカンマ・タブ・スペースのどれでも構いません。
1.23,4.56,7.89
1.25,4.51,7.92
名前:値 の形にすると、凡例にその名前が出ます。
temp:23.5,hum:40.2
Arduino 側はこう書くだけです。
void setup() {
Serial.begin(115200);
}
void loop() {
int raw = analogRead(A0);
float volt = raw * 5.0 / 1023.0;
Serial.print("raw:");
Serial.print(raw);
Serial.print(",volt:");
Serial.println(volt, 3); // println で改行を送るのが大事
delay(20);
}
数値として読めない行(Hello や Setup done など)はコンソールに表示されるだけで、グラフには影響しません。
🌐 対応ブラウザ
シリアルポートへの接続には Web Serial API を使っています。未対応のブラウザで開いてもページは壊れません(接続ボタンが無効になり、デモモードだけ使えます)。
| ブラウザ | 接続 | デモモード |
|---|---|---|
| Chrome / Edge / Opera(デスクトップ版) | ✅ 89 以降 | ✅ |
| Firefox(デスクトップ版) | ✅ 151 以降 | ✅ |
| Safari | ❌ 未対応 | ✅ 使える |
| Android の Chrome | △ 138 以降・Bluetooth 経由のみ | ✅ |
| iOS | ❌ 未対応 | ✅ |
Firefox は 2026年5月リリースの 151 から対応しました。初回だけ「サイトごとの許可アドオン」を入れる手順が挟まります。
💡 データはどこにも送信されません
受信データの処理・グラフ描画・CSV の生成は、すべてあなたのブラウザの中だけで行われます。サーバには何も送っていません。ポートを開く許可も、ブラウザがあなたに直接たずねる仕組み(ユーザーが選んだポートだけが見える)になっています。
🛠️ うまくいかないときは
| 症状 | 確認すること |
|---|---|
| ポート選択に何も出てこない | ケーブルが充電専用ではないか/ドライバ(CH340・CP2102 等)が入っているか |
| 「接続できませんでした」と出る | Arduino IDE など他のアプリがポートを掴んでいないか |
| 文字化けする | ボーレートがスケッチの Serial.begin() と一致しているか |
| グラフが出ない | 数値以外の文字が混ざっていないか/println で改行を送っているか |
| 途中でグラフが増えた | 行ごとに値の個数や名前が変わると、新しい系列として扱われます |
🔗 関連
- ブラウザだけでArduino・ESP32の値をグラフに — このツールの解説。
while (!Serial)が返ってこない DTR の話と、ESP32 で RTS に触らない理由 - I2C・SPI・UART の違いと使い分け完全ガイド — シリアル通信そのものの基礎
- ArduinoのAD変換(ADC)徹底解説 — グラフに出す値を作る側