C3PWM4 · DMX512 4ch PWM調光器

PWM4 の Web UI を、タブごとに一通り

M5Stamp C3U + DRV8803 で組んだ4ch調光器 (PWM4) を、ブラウザから操作するための一式。 DMX受信の生値と実PWM出力を横に並べて見ながら、シーンの呼出・編集・調光カーブの調整までを 1台のWebページで完結できます。

AP接続PWM4-C3-<No>
AP側IP192.168.4.1
STA側IP192.168.1.<No>
OTA更新/update
PWM4 Web UI 全体像 — Scene / Edit / Settings / カラープリセット 4タブを同時表示 🔍 クリックで拡大

実機スクリーンショット (2026-09-07) — 4タブを1画面に並べた全体像。個別の拡大は各セクション参照。

01 / Scene タブ

今の出力を見ながら、シーンを呼び出す

起動直後に開く画面。CH1-4の実出力バーとDMX受信生値、8本のシーンボタン、全消灯ボタンが並ぶ。 シーン番号は色専用ではなく、6-8番は特殊な役割を持つ点に注意。

Scene タブ 実機スクリーンショット
1-5
固定色シーン全灯・R・G・B・W。タップで即呼出、フェード時間はEditタブで設定した秒数。
6
デモ (自動調光8パターン)1/2灯チェイス・往復・全灯明滅・交互明滅・波・ランダム1/2灯から選べる内蔵演出。呼出中はDMX入力より優先される。詳細は下の「02b」参照。
7·8
Master ±色は変えず、全体の明るさ(Master)を1タップ約10%ずつ上下。今のシーンを維持したまま使える。
DMX
CH欄の見方バーとレベル値は実PWM出力、下の「DMX xxx」は受信生値。ソース(DMX優先/シーン優先/HTP)の設定はSettingsタブ。
配色
CH1-4 = 赤/緑/青/白で固定色分け枠・バー・数値の色がCH1=赤・CH2=緑・CH3=青・CH4=白で統一されており、どの数値がどのchかを一目で読める。Editタブのスライダーやカラープリセットの数値欄も同じ配色。
電源
最後のシーンを覚えて自動復帰0(全消灯)〜6(デモ)は、呼出すたびにNVSへ保存。次回起動時はWiFi/DMXの初期化より先にこの値を読み出し、リセットから0.5秒未満で復元する(フェールセーフ)。7・8(Master±)はボタン動作なので保存対象にはならない — 押した後も「最後のシーン」は直前の色シーンのまま。
02 / Edit タブ

シーンの中身を直接いじる

シーン1-8を選んで、名前・CH1-4のレベル・呼出フェード秒数を編集。呼出中のシーンを編集すると スライダー操作がそのまま出力に反映される (LIVE)。保存を押すまでは電源を切ると元に戻る。 CH1-4スライダーもScene タブと同じ赤/緑/青/白で色分けされている。 シーン6「デモ」だけは中身が別物 (下の 02b 参照)

Edit タブ 実機スクリーンショット
種類: レベル固定 / 演出固定は今回のようなCH1-4の静止値。演出はチェイスやクロスフェードなど effects.h の自動パターン。
呼出フェード0.1秒刻み。0=CUT(即切替)、最大25秒までクロスフェードで呼び出せる。
%
クイックボタン全0%〜100%まで5段階を1タップでCH1-4に一括セットできる。
02b / シーン6「デモ」専用: 自動調光

8パターンから選んで、速度・フェード率・方向を自由に

シーン6を選ぶとEditタブの中身が通常のレベル/演出フォームから専用UIに切り替わる。 色シーンのような「値」の概念が無い代わりに、パターン・方向・速度・フェード率の4つを いつでも調整できる。保存ボタンは無く、変更は即座に反映されNVSへも自動保存される。

シーン6 自動調光デモ 実機スクリーンショット
8
8パターン1灯チェイス・2灯チェイス・往復・全灯明滅・交互明滅・波(常時)・ランダム1灯・ランダム2灯。
方向
方向 (パターン依存)チェイス系は順/逆、全灯明滅はなめらか/点滅、交互明滅は対角ペア/隣接ペア、波は順方向/逆方向。往復とランダム系には方向の概念が無く欄ごと隠れる。
速度
速度 0-99大きいほど速い。ステップ型は1周(フェード+保持)0.6〜12秒、常時型(全灯明滅/波)は位相の進み方に反映。
フェード率 0-100%1ステップのうちフェードに使う割合。100%=常時クロスフェード、0%=瞬時切替。全灯明滅/波には効かない (常時変化のため欄ごと隠れる)。
パターン内容方向の意味
1灯チェイス1灯ずつ順番に点灯が移動順 / 逆
2灯チェイス隣接する2灯が同時に移動順 / 逆
往復1灯が端から端をピンポン往復-
全灯明滅4灯が同時に明るくなり暗くなるなめらか(三角) / 点滅(矩形)
交互明滅2灯ずつのペアが交互に明滅対角ペア(1+3/2+4) / 隣接ペア(1+2/3+4)
波(常時)4灯が位相をずらして常時変化、消灯を挟まない順方向 / 逆方向
ランダム1灯毎ステップ1灯をランダムに選択-
ランダム2灯毎ステップ異なる2灯をランダムに選択-
03 / Settings タブ

DMXの受け方と、光り方の調整

DMXアドレスの割当から、調光カーブ・イーズアウトフェード・下駄・PWM周波数まで。 STM32版 PWM_DRV8803 と同じ調光パイプラインを踏襲している。

Settings タブ 実機スクリーンショット
Src
出力ソースDMX優先/シーン優先/HTP合成の3択。DMX優先は信号が来ていればDMXそのまま、切れたら下の「DMX断のとき」設定に従う。
Lost
DMX断のとき消灯・呼出中のシーンへ・最後の値を保持、の3択。「シーンへ」を選ぶと本体ボタンで選んだシーンに自動フォールバックする。
Dim
調光カーブ / フェードLinear/Mild/Standard/Strongの4カーブと、CUT IN/OUT (95%以上の跳びを即スナップ) がSTM32版と共通の見え方を再現する。
04 / ネットワーク設定 (/net)

WiFiとアクセスポイント

ヘッダーの「🔧設定」から開く独立ページ。STA接続先の切替、機体番号 (No.) の変更、 AP常時ONの可否などを設定する。Webアクセスが60秒無いと自動でWiFiがOFFになるため、 本体ボタンを3秒長押しすると復帰する。

項目内容
STA SSID/Password常時接続する既存WiFiの設定。接続できればAPは自動で止まる。
機体番号 (No.)AP名の末尾とSTA側IPアドレス下1桁になる (例: No.10 → 192.168.1.10)。
WiFi自動OFFWebアクセス無し60秒でWiFiが切れ、状態LEDが緑に戻る (常時有効)。
05 / カラープリセット (/col)

20色から選んで、シーンへ一発書込み

ヘッダーの「🎨色」から開く。丸をタップすると選択中のシーン(1-5)のCH1-4を上書き保存する。 数値は0-255で直接編集でき、変更するとそのプリセット自体が更新される。

カラープリセット 実機スクリーンショット
20
用意されている色赤・橙・黄・黄緑・緑・緑シアン・シアン・空色・青・青紫・マゼンタ・ピンク・白・暖白・電球色・冷白・パープル・ターコイズ・琥珀・消灯。
RGB
RGB / RGBW 切替RGBモードにするとWhite欄が無効になり、シーンへ書込む際もCH4(White)には触れない。RGBW器具ではないシーンを保つ時に使う。
保存
数値の編集は即保存入力欄を変更すると自動でNVSに保存され、次回起動後も同じ色のまま残る (プリセット自体の上書き)。
06 / 本体ボタン

ブラウザが無くても、最低限は本体だけで

G9ボタン (I2C SCLと共用) の押し方で2つの動作。電源投入時に押すとダウンロードモードに入るため、操作は起動後のみ。

短押し次のシーンへ進む (0→1→2…→8→0の順で循環)。7・8番まで来るとMaster±として動作する。
••• 3s
3秒長押しWiFiが切れていても強制的にAP+STAへ復帰させる。設定画面を開きたい時の最終手段。
07 / OLED表示

ブラウザを開かなくても、本体だけで状態がわかる

任意接続の0.96インチOLED (SSD1306)。8行のうち中央3行 (row4-6) は母体のSTM32版と同じ 「2重バーグラフ」で、外枠がDMX受信生値、内側の実線が実PWM出力を表す — フェード中は この2つの高さの差が、どれだけ遅れて追従しているかをそのまま示す。

S1 M255 30Hz
AP 192.168.4.1
STA 192.168.1.10
DMX 255 0 0 0 DMX
26/09/07 14:25
内容
row0現在のシーン番号・Master値・DMX受信Hz・フォルト表示
row1-2AP/STAのIPアドレス (WiFi OFF時は "WiFi OFF")
row3DMX受信生値 (CH1-4)。バーグラフの真上、各chの中心に数値を揃えて表示
row4-62重バーグラフ本体 (外枠=DMX入力 / 内側=実PWM出力) ×4ch
row7ビルドタイムスタンプ (右寄せ)