TL;DR
- ネットワークの通信を「光の粒」として可視化するツールを作って公開しました
- パケット1個 = 光1個。色 = プロトコル / 明るさ = サイズ
- 画面(Webアート) と 物理LED(WLED) の両方に、同じイベントストリームを流せます
- ハードは不得意なので、虹色に光るルーター / 光ファイバモデム を作ってくれる人を募集中です
設計:データ源と光らせ先を疎結合に
肝は、入力(データ源)と出力(光らせ先)を 1 本のイベントストリームで分離していることです。
データ源 ストリーム 光らせ先
demo / psutil / scapy / pcap → server.py(WebSocket) → ブラウザ Canvas
→ WLED 物理LED(UDP)
イベントは 1 パケット = 1 JSON:
{"ts": 1718000000.0, "src": "203.0.113.7", "dst": "192.168.1.5",
"proto": "HTTPS", "size": 1380, "dir": "in"}
-
データ源:
demo(合成) /psutil(接続単位・Npcap不要) /scapy(真のパケット単位) /pcap(再生) -
画面: Canvas で中央=自端末、周囲=通信相手。
lighter合成 + 放射グラデでグロー表現 - 物理LED: WLED のリアルタイムUDP(DNRGB, port 21324)。テープを「光の川」に見立て、パケットで点灯→毎フレーム減衰
出力を増やしたいときは、同じ JSON を受け取る先を足すだけ。--wled HOST で画面とLEDへ同時送出できます。
使い方(抜粋)
# 画面だけ:index.html を開くだけ(バックエンド無しでデモ動作)
# 自PCの実トラフィック:
cd server && pip install -r requirements.txt
python server.py --source psutil # Npcap/管理者 不要
# 物理LEDも:
python server.py --source psutil --wled 192.168.1.50 --leds 60
募集:これで“光るハードウェア”を作りませんか
ソフト(頭脳)は完成・OSS化済みです。次は 物理的に光らせる人 を探しています。
- 🌈 虹色ルーター: LEDハロー、または Raspberry Pi/OpenWrt で自作ルーター化して本体ごと光る
- ✨ 光ファイバモデム: サイドグロー光ファイバ(PMMA)を「1本=1フロー」に見立て、光が中を流れる
デモ(開くだけで動く) → https://net-illumination.pages.dev
リポジトリ → https://github.com/highdefinitionaudiodriver/net-illumination
Issue / PR / fork 歓迎。配色 PALETTE は front と LED で共有なので、色設計だけの貢献も大歓迎です。