重要なポイント
- 3つのローカルプロトコルがほぼすべてのブランドをカバー:Modbus TCP、MQTTブリッジ、ローカルREST API。適切な選択はブランドではなく具体的なデバイスモデルによって異なります。
- Modbus TCPが最も信頼性の高いオフラインパス — インターネットもクラウドブローカーも不要で、LAN経由の直接レジスタ読み取りで動作します。
- EcoFlow PowerStreamは主な例外:2026-07-03時点でローカルModbus TCPまたはMQTTパスなし。すべてEcoFlowクラウド経由。
- Victron Cerbo GXが最強のローカル制御:公式HA統合(HA 2026.5以降)、文書化されたModbus TCP、完全オフライン対応のローカルMQTT。
- ローカルインターフェース対応はファームウェア更新で変わる可能性があります — 購入前に最新の統合リポジトリで確認してください。
ローカル統合のための3つのプロトコルパス
Modbus TCPはLAN経由でデバイスレジスタを直接読み取ります — クラウドアカウント、ブローカー、アダプターソフトウェアは不要です。 デバイス(またはローカルゲートウェイ)がTCPポート(通常502または8899)でリッスンし、レジスタ読み取りコマンドに応答します。インターネット接続が切れても継続動作します。
MQTTブリッジ統合はデバイスとHome Assistantの間に位置します。 デバイスはトピックにデータをパブリッシュし、アダプタースクリプトまたはHACS統合がサブスクライブしてHAエンティティを作成します。ローカルブローカーに向けると完全オフライン動作します。
ローカルREST APIパスはLAN上のデバイスへのHTTP GET/POSTを使用します。 Zendure SolarFlow 800 Proはネイティブでこれを公開しています。MarstekはMarstek Local API(HACS)経由で提供します。
📍 一文で説明
Modbus TCPはLAN経由でレジスタを直接読み取り、MQTTブリッジはpub/subブローカーを使用し、ローカルREST APIはデバイスが直接HTTP要求に応答します。
💬 簡潔に説明
Modbus TCP=ホームネットワーク上の直接接続;MQTT=ブローカーを仲介するメッセージシステム;REST API=デバイスがウェブサイトのように要求に応答。
ブランド別対応表
以下のすべての項目は、2026-07-03にアクティブなGitHub統合リポジトリとメーカードキュメントで検証済みです。ローカルインターフェース対応はファームウェアバージョンによって変わる可能性があります。
| ブランド / 製品 | Modbus TCP | ローカルMQTT | ローカルREST API | オフライン? | HA統合 |
|---|---|---|---|---|---|
| Anker SOLIX(蓄電池) | ✅ ポート502、公式 | ⚠️ クラウドブリッジのみ | — | ✅ Modbus経由 | ha-anker-solix-official (HACS) |
| Zendure SolarFlow 800 Pro | — | ✅ ローカルHTTP+MQTT | ✅ ローカルHTTP | ✅ | Zendure/Zendure-HA(公式) |
| Zendure Hub 1200/2000, Hyper 2000 | — | ⚠️ クラウドMQTTのみ | — | ❌ | z-master42/solarflow(コミュニティ) |
| Hoymiles HMS/HMT(DTU-Pro経由) | ✅ DTU-Pro経由 | ✅ OpenDTU / hoymiles-mqtt | — | ✅ | hoymiles-mqtt-integration (HACS) |
| Marstek B2500 / Jupiter / Venus | ⚠️ VenusのみRS485 | ✅ hame-relay+hm2mqtt | ✅ Marstek Local API | ✅ | Marstek Local API v1.0.0 (HACS) |
| Growatt NOAH 2000 / インバーター | ✅ ローカルModbus TCP | ✅ noah-mqtt / growatt2mqtt | — | ✅ | Homeassistant-Growatt-Local-Modbus (HACS) |
| Deye SUN600G3(マイクロインバーター) | ✅ ポート8899(非公式) | ✅ SolarmanV5 / deye-inverter-mqtt | — | ✅ | Solarman HACS統合 |
| Victron Cerbo GX | ✅ 公式・文書化済み | ✅ 公式(HA 2026.5以降) | — | ✅ | 公式HA統合 |
| Sungrow SH-RTシリーズ | ✅ コミュニティ | ✅ ModbusTCP2MQTT | — | ✅ | Sungrow-SHx-Inverter-Modbus (HACS) |
| Kostal Plenticore(G3+) | ✅ HACS統合 | — | ✅ 公式REST API | ✅ | 公式HA統合(REST) |
| EcoFlow PowerStream | ❌ | ❌ クラウドMQTTのみ | ❌ | ❌ | tolwi/hassio-ecoflow-cloud(クラウドのみ) |
2026-07-03検証済み。ファームウェア更新でローカルアクセスが追加・削除される可能性があります。
パスA:Modbus TCP設定
Modbus TCPには3つの要件があります:デバイスがHome AssistantとLANで接続されていること、Modbusインターフェースが有効化されていること、モデルのレジスタマップがあること。 ほとんどのHACS統合はレジスタマップを同梱しています。
- 1デバイスでModbus TCPを有効化:Anker SOLIX → Ankerアプリ → デバイス設定 → Modbus有効化。Hoymiles → DTU-Proウェブ画面。Growatt → デフォルトで有効。Deye → 設定不要、ポート8899は常時オープン。
- 2ルーターでデバイスに静的IPアドレスを割り当て(またはDHCP予約)して、HA統合のアドレスが変わらないようにする。
- 3対応するHACS統合をインストール:Ankerにはha-anker-solix-official、Hoymilesにはhoymiles-mqtt-integration、GrowattにはHomeassistant-Growatt-Local-Modbus、DeyeにはSolarman統合、VictronにはVictron GX公式統合。
- 4統合設定でデバイスIPとポートを入力。標準Modbusポートは502;Deyeは8899を使用。
- 5HAのセンサーエンティティを確認 — 現在の出力電力は5〜10秒以内に更新されるはずです。「使用不可」と表示された場合は、IP、Modbus有効化設定、ファイアウォールルールを確認してください。
パスB:MQTTブリッジ設定
MQTTブリッジ統合は、デバイスをポーリングするかプッシュデータを受信してローカルMosquittoブローカーに再パブリッシュする小さなアダプタースクリプト(またはHAアドオン)を実行します。 ローカルブローカーに設定すれば完全オフラインで動作します。
- 1MosquittoブローカーをHAアドオンとしてインストール(設定 → アドオン → Mosquitto Broker)し、ユーザー名とパスワードを設定。
- 2HAでMQTT統合を設定(設定 → デバイスとサービス → 統合を追加 → MQTT)してローカルブローカーに接続。
- 3デバイス固有のアダプターをインストール:Growatt NOAH 2000にはnoah-mqtt、MarstekにはDockerまたはHAアドオンとして実行するhame-relay+hm2mqtt、HoymilesにはDockerまたはHAアドオンとして実行するhoymiles-mqtt、DeyeにはDockerまたはHAアドオンとして実行するdeye-inverter-mqtt、ZendureにはDockerまたはHAアドオンとして実行するZendure-HA。
- 4アダプターをデバイスIPと、可能であれば製造元クラウドブローカーではなくローカルMosquittoブローカーに向ける。
- 5データフローを確認:エンティティはMQTTディスカバリーで自動的に表示されるか、HA MQTT統合のTopicsセクションで受信メッセージを確認。
パスC:ローカルREST API
ローカルREST APIは、デバイスがLAN上でHTTPサーバーを実行することを意味します — 別途アダプター不要。 Zendure SolarFlow 800 Pro、Marstek、Kostal Plenticoreがこのパスを使用します。
- 1モデルのローカルAPI対応を確認:HACS統合のREADMEまたはメーカーの開発者ポータル。
- 2HACSから統合をインストール:「Marstek Local API」または「Kostal Plenticore」を検索。Zendure-HA(公式)はローカルAPIとクラウドMQTTの両方に対応。
- 3デバイスIPと必要に応じて管理者パスワードを入力(KostalはウェブUI パスワードを使用)。別途ブローカーやアダプタースクリプトは不要。
- 4センサーエンティティと制御をテスト — KostalとMarstekの場合、監視だけでなくバッテリー充電制限の制御も含みます。
EVCC統合
EVCCはModbus TCPとMQTTをネイティブでサポートしているため、パスAまたはBで動作するデバイスはすべてEVCC電力メーターソースとしても使用できます。evcc.yamlでデバイスをtype: modbus(Modbus TCP)またはtype: mqtt(MQTTブリッジ)のメーターとして設定してください。
よくある質問
Anker SOLIXでModbus TCPを有効にするとAnkerアプリが使えなくなりますか?
いいえ。Anker SOLIXの公式Modbus統合はAnkerアプリとクラウドと並行して動作します。Ankerアプリ設定でModbus TCPを有効にすると、クラウド機能を削除することなくローカルレジスタアクセスが追加されます。
なぜZendureの対応表に2行あるのですか?
Zendure SolarFlow 800 Proにはインターネット接続なしで動作するローカルHTTP/MQTT APIがあります。旧Zendureモデル(Hub 1200、Hub 2000、Hyper 2000、Ace 1500)はZendureのクラウドMQTTブローカーとのみ通信します。公式Zendure-HA統合は両方のパスに対応しています。
EcoFlow PowerStreamはローカル制御に対応する予定ですか?
EcoFlowは2025年中頃にローカルソリューションを開発中と述べましたが、リリース日は示されていません。検証日(2026-07-03)時点でPowerStreamの検証済みローカルAPIまたはModbus TCPパスは存在しません。最新情報はEcoFlow開発者コミュニティまたはhassio-ecoflow-cloudリポジトリで確認してください。
全体的に最高のローカル制御を持つブランドはどこですか?
Victron Cerbo GXが最強のローカル制御を誇ります:Home Assistantコアの公式統合(HA 2026.5以降)、公開されたレジスタマップを持つ文書化済みModbus TCP、完全オフライン対応のローカルMQTT。次いでAnker SOLIXが公式コミュニティHACS統合とポート502のModbus TCPでクラウドアプリと並行動作します。