コミュニティソリューション

公式の7th Bay LED APIでZimaCubeのRGBを制御する

A 2024 user asked how to control ZimaCube RGB without custom firmware; current ZimaOS docs now publish the official ESP32 JSON protocol.

ZimaCube 7th BayのRGB照明には公式制御プロトコルが用意されたため、色やエフェクトを変更するだけならCubeFXを書き込む必要はありません。公式ファームウェアは、172.16.1.1のESP32 Wi-Fiエンドポイントを公開し、ブリージング、固定色、LEDごとのカスタムモードのJSONコマンドを受け付けます。

CubeFXは、別のインターフェースやより高度なカスタマイズを希望するユーザー向けのコミュニティファームウェアとして、引き続き任意で利用できます。標準ファームウェアを使う場合は、公式のHTTP/JSON方式を使用し、ESP32のファームウェアを書き換えないでください。

7th Bayの照明の仕組み

現在の7th Bay LEDプロトコルによると、照明コントローラーは13個のWS2812B LEDストリップに接続されたESP32です。

照明コントローラーに接続する

公式ファームウェアは、ZimaCubeという名前のWi-Fiネットワークを作成します。ドキュメントに記載されているパスワードはhomecloudです。コントローラーには172.16.1.1からアクセスできます。

ping 172.16.1.1

色を固定する

{
  "id": 2,
  "data": [
    {"h": 21, "s": 255, "v": 255}
  ]
}

JSONをコントローラーに送信します:

curl -X POST -H "Content-Type: application/json" -d @light.json http://172.16.1.1/post

ブリージングモードとカスタムモード

モード1は速度を調整できるブリージングモードです。モード5では、13個すべてのLEDの色と明るさを個別に制御できます。公式ドキュメントでは、モード3と4は現在開発中とされています。

標準ファームウェアをそのまま使えます

これが2024年のフォーラムスレッドからの大きな変更点です。現在は公式の制御ドキュメントが公開されています。サードパーティ製イメージを書き込まなくても、標準ファームウェアをスクリプトで操作できます。

CubeFXは引き続き任意の選択肢です

コミュニティのCubeFXプロジェクトスレッドでは、希望する上級ユーザー向けにカスタムファームウェアを導入する方法が紹介されています。

OTAファームウェアアップデート

ESP32にはOTA用のWebインターフェースもあります。出所不明のファームウェアバイナリをアップロードしないでください。復旧用コピーを保管し、カスタムファームウェアによってZimaOSが想定するプロトコルが変わる可能性があることを理解しておきましょう。

RGBをステータスの自動表示に活用する

制御エンドポイントはJSONを受け付けるため、ストレージサブシステムに触れずに、スクリプトを使ってバックアップ状態、ディスクアラート、ダウンロード、ローカルAIの動作状況を色に割り当てることができます。

RGB制御の概要で、プロジェクトについてさらに詳しく確認できます。

JSON送信前にHSV値を変換する

公式プロトコルでは、色相、彩度、明度を0〜255のスケールで指定します。カラーピッカーで角度とパーセンテージが使われている場合は、ESP32に送信する前に値を変換してください。

自動化の前にシンプルなモードを1つテストする

まず単色モードから始めて、コントローラーが応答することを確認してください。その後で、バックアップ状況、ディスクアラート、音楽に合わせた演出などのスクリプトを追加します。これにより、ネットワークやプロトコルの問題と自動化ロジックの問題を切り分けられます。

自動化を重要な通知経路にしない

ディスク障害やバックアップの通知は、視覚的に確認しやすくするための手段としてLEDを使い、LEDだけに頼らないでください。ハードウェアの通知は、ログ、メール、監視システムなど、別の永続的な通知経路でも受け取れるようにしてください。

よくある質問

LEDの制御にCubeFXは必要ですか?

いいえ。現在の公式ファームウェアには、仕様が公開されたJSON/HTTPプロトコルがあります。

LEDストリップにはLEDがいくつありますか?

公式ハードウェアドキュメントには、WS2812B LEDが13個と記載されています。

LEDを1つずつ個別に制御できますか?

はい。公式のカスタムモードでは、LEDごとにHSV値を設定できます。

CubeFXの後に純正ファームウェアへ戻せますか?

公式のOTA/ファームウェアリソースを使用し、再書き込み前にハードウェアリビジョンが正しいことを確認してください。