LjStudio は Martin LightJockey 2.7 が書いたデータを読み書きする独自実装です。Martin 社の製品ではなく、同社とは関係がありません。
今の対応状況
LjStudio 側(決める窓・SD へ書く)はできています。LjPlay(M5)がこの設定を読むのは、M5 側のファームの対応後です。今のファームは、これまでどおり「合図待ち(start=wait)」だけを使えます。
M5 側は 3 段で進めます: 段 1 = FLASH から起動・開始のしかた・時刻表・スイッチ・Cue の呼び出し → 段 2 = 外部 DMX 入力 → 段 3 = Web の設定画面。段ができるたびにこの頁を更新します。
関連: USB メモリー / SD へ書き出し、LjPlay と同時に再生して比べる(ショーのデータを SD へ書く手順)
1. なぜ別のファイルで決めるのか
起動のしかたは、SD の直下の LjStart.ini という別のファイルに書きます。ショーのデータ(/LjShow)にも、機体ごとの設定(/LjPlay.ini)にも混ぜません。
| ショーを書き直しても消えない | ショーの書き出しは /LjShow を丸ごと入れ替えます。起動のしかたをその中に置くと、データを入れ替えるたびに変わってしまいます。 |
| 機体の設定を壊さない | /LjPlay.ini には BLE のグループ・鍵・遅れの補正など、機体ごとの大事な値が入っています。Web から書き換えるのは LjStart.ini だけにして、書きかけで止まっても BLE の設定は残るようにします。 |
| SD を抜いても動く(予定) | 4 か月の無人運転を見込んで、M5 は SD を読んだら本体の FLASH に写して、FLASH から起動するようになります(段 1)。SD はデータを運ぶものだけになり、SD が抜けたり読めなくなったりしても、同じショー・同じ起動のしかたで起きます。LjStart.ini も一緒に写します。 |
2. 決めて SD へ書く手順
- SD(カードリーダー)か USB メモリーを PC に挿します。
- メニュー LjStudio(Z) → USB メモリー / SD へ書き出す(LjPlay・LjTouch)… を開き、書き出し先のドライブを選びます。
- 「LjPlay 用」の横の [起動のしかた…] を押します。選んだドライブの
LjStart.ini を読んだ窓が開きます(無ければ既定の値)。
- 開始のしかた・時刻表・スイッチ・外部 DMX・Web を決めます。窓の下の「SD に書く中身」に、書かれる文字がそのまま出ます。
- [SD へ書く]。窓のいちばん下に「書きました」と、決めた内容の 1 行の要約が出ます。
起動のしかたの窓: 時刻表で開始・18:30 に Cue 3・20:00 に Cue 5・22:00 に止める、外部 DMX の ch511 で Cue を呼ぶ例(押すと大きく)
書き出しの窓に戻ると、「書く内容」の欄に今の起動のしかたが出ます。ショーの書き出し([書き出す])は LjStart.ini を変えません。
書き出しの窓: [起動のしかた…]のボタンと、「LjPlay の起動のしかた: 開始: 時刻表(3 行)・ch511 で Cue 呼び出し・…」の行(押すと大きく)
矛盾した設定は書きません(窓の下に「直すところ」が出て、[SD へ書く]が押せなくなります)。たとえば「時刻表で開始」なのに時刻表が空、「外部 DMX で開始」なのに開始の ch が 0、開始の ch と Cue を呼ぶ ch が同じ、など。
3. 開始のしかた(5 とおり)
| 電源を入れたらすぐ再生 | 起動して読み込みが済んだら、最初の Cue リストを頭から再生します(start=auto)。 |
| スイッチで開始 | スイッチを押すまで何も出さずに待ちます(start=switch)。スイッチの種類は「5. スイッチ」。 |
| 時刻表で開始 | 時刻表のいちばん早い動作の時刻まで待ちます(start=timer)。 |
| 外部 DMX で開始 | 決めた ch が 128 以上になったら開始します(start=dmxin)。 |
| 合図を待つ | COM や BLE のタイマーからの合図(0 から始める)を待ちます(start=wait)。何台もの M5 を同時に頭から始めるとき。 |
「最初の Cue リスト」は、開始したときに回す Cue リストの番号です。0 なら番号のいちばん小さい Cue リスト。
4. 時刻表
1 行に 1 つ、毎日その時刻に動きます(16 行まで)。時刻は「時:分:秒」か「時:分」。
| 18:30:00 cue 3 | Cue 3 を呼ぶ(3 は Cue の番号) |
| 19:00 cuelist 2 | Cue リスト 2 を頭から再生する |
| 22:00 stop | 止める(全 ch 0。次の開始は頭から) |
時刻は M5 本体の時計(RTC)で数えます。
BLE のタイマーが届いている間は、タイマーが親になります。そのあいだ時刻表とスイッチは使いません(タイマーの指示どおりに動きます)。
5. スイッチ
| 画面に触れる | M5 の画面に触れると開始します。 |
| PORT B の接点 | M5 の PORT B につないだ接点(押しボタン等)で開始します。 |
押したときの動きは「開始だけ」(走っている間に押しても何もしない)か、「押すたびに開始・停止」を選べます。
6. 外部 DMX 入力
照明卓など、外から来る DMX で LjPlay を動かします(段 2)。
| 開始の ch | この ch が 128 以上になったら開始。下がったときに「止める」か「続ける」かを選べます。0 なら使いません。 |
| Cue を呼ぶ ch | この ch の値が N(1〜255)になったら Cue N を呼びます。0 に戻しても何もしません。0 なら使いません。 |
例: 卓のフェーダーを ch512 に割り当てて上げると開始・下げると停止、ch511 を 3 にすると Cue 3。
7. Web の設定画面(AP / WiFi)
PC が無くても、スマホやタブレットのブラウザから起動のしかたを直せるようにします(段 3)。
| 開くとき | 「画面を押したまま電源を入れたときだけ開く」か「使わない」。普段は WiFi を起こしません(DMX の刻みを乱さないため・電気も食わない)。 |
| つなぎ方 | 「M5 が自分で電波を出す(AP)」か「会場の WiFi につなぐ」。 |
| SSID・パスワード | パスワードは 8〜63 文字(空なら鍵なし)。SD にそのまま書かれるので、SD の扱いに気をつけてください。 |
Web で直せるのは LjStart.ini だけです。保存すると M5 が再起動します。
8. SD に書かれる中身
文字のファイルなので、メモ帳でも読めます(例は上の画面の設定)。
; LjStart.ini — LjPlay の起動のしかた(LjStudio 2026-10-24 19:48)
; start: auto=電源ですぐ / switch=スイッチで / timer=時刻表で / dmxin=外部 DMX で / wait=合図(COM・BLE)待ち
ver=1
start=timer
cuelist=1
switch=touch
switch_action=start
timer1=18:30:00 cue 3
timer2=20:00:00 cue 5
timer3=22:00:00 stop
dmxin=1
dmxin_start_ch=0
dmxin_start_off=stop
dmxin_cue_ch=511
web=hold
wifi=ap
wifi_ssid=
wifi_pass=
- 書くときは別名に書いて読み直し、合っていたら入れ替えます。前のファイルは
LjStart.ini.old に 1 つ残します。
- LjStudio が知らない行(M5 側や Web で足したもの)は、消さずに残して書き戻します。
/LjShow と /LjPlay.ini には触りません。
9. データの大きさの目安
LjPlay が持つのは「場面(Scene)」と、それを並べて繰り返す手順だけです。データの大きさは再生する時間ではなく、違う場面の数で決まります。ループやフェードを何時間続けても増えません。
| 1 場面 | SD 上で 6,328 バイト、M5 の中では 1,032 バイト(512 ch) |
| 試験データ SyncTest512 | 282 場面(512 ch すべてが 25 ms ごとに動く 1 ユニバースのショー) |
| FLASH 1 面に入る数(見込み) | 約 5,700 場面 |
| 比べると | DMX を毎フレーム録る形だと、30 Hz・3 時間で約 166 MB |
同じ場面を一度も繰り返さない場合でも、2 秒ごとに切り替えて 2 時間なら 3,600 場面で入ります。書き出しの窓は「場面 N 個(M5 の中で最大 約 X KB)」を出し、5,000 個を超えると知らせます(上限は M5 の実機で測って直します)。
10. AI からの操作
AI(Claude 等)からは LjStudio の命令で同じことができます。
| usb start show F: | F: の LjStart.ini の要約と中身を返す |
| usb start open F: | 起動のしかたの窓を F: で開く |
| usb start set F: start=timer timer1=18:30:00 cue 3 … | 今ある設定に足して書く(矛盾していれば書かない) |