Zendure & EMQX --> auto discover mqtt

Bonjour à tous,
Alors, après une bonne journée de recheche sur EMQX, j’ai trouvé une façon plus élégante de faire.
Je vais tenter de l’expliquer:

  • Dans EMQX:
    - Creation de la connexion avec le site de Zendure:
    dans l’interface allez dans le menu de gauche → Integration → Connectors
    En haut à droite bouton create, puis remplir les champs comme ci-dessous:

    Ensuite, un petit test de connexion avec le bouton en bas de la fenetre, pour verifier que l’on a pas fait d’erreure de frappe. Et Update pour finir
    - Création d’une regle:
    Toujours sur le menu cote gauche, allez dans → Integration → Rules
    En haut à droite bouton create, remplir la partie SQL Editor avec: json_decode(payload) as state à la place de * sous SELECT.
    Allez dans « Data Inputs » à droite et cliquer sur message (topic:t/#) et remplir comme cela:

    faire un petit update.
    Ensuite allez dans « Action Outputs », puis « Add Action » et remplir comme ci-dessous:

    Un p’tit « Update » et en bas à gauche « Save », voilà c’est fait.
    Vous pouvez vérifier avec Mqtt Explorer, vous allez avoir quelque chose comme ça:
XXXXXXXXXXX
          dkMMx9ej
                   state = {"solarInputPower":712,"sn":".....XXXXXXXXXXX......"}

Reste plus qu’a configurer Home Assistant.

  • Dans Home Assistant:
    Crée en yaml les Entités, pour ma part c’est dans un fichier mqtt.yaml:
sensor:
# Configuration des capteurs pour Zendure
# le 20250329
  - name: "Solar Input Power"
    unique_id: "Zendure.Solar_Input_Power"
    state_topic: "XXXXXXXXXXX/dkMMx9ej/state"
    value_template: "{{ value_json.solarInputPower }}"
    unit_of_measurement: "W"
    device:
      name: "Zendure"
      identifiers: "Zendure_dkMMx9ej"

ci qui donne:


Toutes les données ne sont pas encore toutes configurées. je vous met les differentes valeurs utilisable suivant les differents modeles de Zendure:

SuperBase V

Field Description device_class
electricLevel Device battery percentage sensor
remainOutTime Remaining discharge time sensor
remainInputTime Remaining charging time sensor
socSet Charge Capacity Limitation sensor
batterCapacity battery capacity sensor
acInputLimit AC input limit sensor
slowChargePower Slow charging power sensor
inputPower total input power sensor
acSwitch AC switch switch
acInputMode AC input mode(1: Power grid 2: Charging cable) sensor
acInputPower AC input power sensor
acHz AC input frequency sensor
acInputVoltage ac input voltage sensor
acOutputMode AC output mode(1:UPS 2:120V 3:120V和240V) sensor
acOutputPower AC output power sensor
acOutputVoltage AC output voltage sensor
acOutputFactor AC output load factor sensor
dcSwitch DC switch switch
dcInputMode DC input mode(1: car charger 2: solar energy) sensor
dcInputPower DC input power sensor
outputPower total output power sensor
dcOutputPower DC output power sensor
circleOutputPower circle output power sensor
usb1OutputPower USB1 output power sensor
usb2OutputPower USB2 output power sensor
typec1Power TypeC1 output power sensor
typec2Power TypeC2 output power sensor
typec3Power TypeC3 output power sensor
typec4Power TypeC4 output power sensor
andersonPower Anderson output power sensor
ambientSwitch Ambient light switch switch
ambientLightMode Ambient light mode sensor
ambientLightColor Ambient light color sensor
ambientLightNess Ambient light brightness sensor
buzzerSwitch buzzer switch switch
masterSwitch master switch switch
childLock child lock switch switch
assistSwitch power wheel switch switch
assistAngle Power wheel angle sensor
lampSwitch light switch switch
lampMode light mode sensor
upsMode UPS mode sensor
machineStandTime automatic shutdown time sensor
screenStandTime automatic screen off time sensor
wifiSwitch wifi switch switch
wifiSignalLevel wifi signal level sensor
blueState blue state sensor
wifiState wifi state sensor
silentInput Silent charging mode (sleep mode) sensor
ampUp constant power mode sensor
dcHardwareVersion DC Hardware version sensor
acHardwareVersion AC hardware version sensor
bmsHardwareVersion BMS hardware version sensor
masterHardwareVersion MASTER hardware version sensor
typecHardwareVersion TYPEC hardware version sensor
electricFanState fan status sensor
batteryNum battery num sensor
temperature device temperature sensor
solarWorkMode Solar working mode sensor
solarWorkOutputVoltage Solar output voltage sensor
solarOutputPower Solar output power sensor
assistDoubleFlash Power wheel double flash switch switch
seriesMode series mode sensor
parallelMode parallel mode sensor

SolarFlow

Field Description device_class
electricLevel Device battery percentage sensor
remainOutTime Remaining discharge time sensor
remainInputTime Remaining charging time sensor
socSet Charge Capacity Limitation sensor
outputLimit output limit sensor
solarInputPower solar input power sensor
packInputPower pack input power sensor
outputPackPower output to pack power sensor
outputHomePower output to home power sensor
packNum pack num sensor
packState pack state(0:standby 1:input 2:output) sensor
buzzerSwitch buzzer switch switch
masterSwitch master switch switch
solarPower1 Solar1 Input Power sensor
solarPower2 Solar2 Input Power sensor
passMode Bypass Mode 0:auto 1:always off 2:always on sensor
autoRecover Automatic recovery of bypass mode settings 0:off 1:on sensor
packData pack Data sensor
maxVol The highest voltage among all cells, calculated as ‹ value * 0.01 ›, unit: V sensor
minVol The lowest voltage among all cells, calculated as ‹ value * 0.01 ›, unit: V sensor
totalVol The total voltage, which is the sum of all cells’ voltages, calculated as ‹ value * 0.01 ›, unit: V sensor
maxTemp The maximum temperature, which represents the highest temperature value among all battery cells at the current (real-time) moment, unit: Kelvi sensor
socLevel Current battery capacity of the battery pack sensor
sn Current battery pack battery code sensor
hubState Hub output status(0: stop output standby 1: stop output and shut down) sensor

The Fields Extended By Hyper 2000 & Ace 1500 Based On SolarFlow

Field Description device_class
gridInputPower grid input power sensor
acOutputPower ac output power(Hyper 2000) sensor
dcOutputPower dc output power(Ace 1500) sensor
acSwitch ac switch switch
dcSwitch dc switch(Ace 1500) switch

Si vous avez des commentaires pour ameliorer les choses, je suis preneur …
:blush:

1 « J'aime »

J’ai un petit commentaire (inutile) : j’adore ton avatar :wink:

1 « J'aime »

Bon alors avec le temps apparait des petits problemes ennuyeux.
Pas de retour a zero des valeurs par exemple.
Donc je me suis decidé a utiliser ioBroker via ce fil de discution.
Mais cela ne resolvait pas mon probleme avec EMQX !
Je vais faire un nouveau sujet juste pour completer le fil ci-dessus.
:wink: