Seite 1 von 1

Seplos BMS auslesen

Verfasst: 17. Apr 2026 21:36
von mad-mike
Moin zusammen.

Vorgeschichte:
Ich habe vor gut einem Jahr ein BMS von meinem Akku erneuert da kaputt... nun bin ich von einen 1 zu 1 tausch ausgegangen... vor ein paar Tagen hat mein Akku von der PV Anlage eine Not Abschaltung ausgeführt mit der Info tiefenentlade schutz...

Eigentlich habe ich immer aufgepasst das der SOC wert ne zu tief ist, aber okay... dies hat mich veranlasst mal zu versuchen, den Akku eventuell mal auszulesen, nicht nur mittels Software tool, sondern auch mittels RS485 adapter...

Ich habe ein Script auf Git gefunden, welches sofort und ohne probleme angelaufen ist und mittels GPT habe ich mir dann things und items erstellt... Der weg vom Akku läuft über MQTT.

Mit gpt habe ich öffters mal Probleme in verbindung mit openhab, aber habs dann doch hin bekommen, und möchte euch den Link, Things und Item Liste weiter teilen: Vielleicht kann es jemand gebrauchen, einzelne Zellen anzeigen zuslassen, und man kann auch sehen, wie das BMS sich kalibriert, und so...

Ich habe einen sunket 10 kwh akku LV, hat zwar eigentlich ein CN energy BMS aber irgendwie ist das alles das gleich, jedefalls, bekam ich direkt kontakt und werte.

Link:
https://github.com/Privatecoder/seplos- ... #L424-L455

Thing:

Code: Alles auswählen

Bridge mqtt:broker:Seplos "Seplos MQTT Broker" [
 host="localhost",
 username="admin",
 password="1234",
 clientID="openhab_seplos"
] {

    Thing topic SeplosBMS "Seplos BMS" @ "MQTT" {
        
        // =======================
        // Packdaten
        // =======================
        Type number : pack_voltage           [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.total_pack_voltage" ]
        Type number : min_pack_voltage       [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.min_pack_voltage" ]
        Type number : max_pack_voltage       [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.max_pack_voltage" ]
        Type number : pack_soc               [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.state_of_charge" ]
        Type number : rated_capacity         [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.rated_capacity" ]
        Type number : battery_capacity       [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.battery_capacity" ]
        Type number : residual_capacity      [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.residual_capacity" ]
        Type number : dis_charge_current     [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.dis_charge_current" ]
        Type number : dis_charge_power       [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.dis_charge_power" ]
        Type number : port_voltage           [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.port_voltage" ]
        Type number : average_cell_voltage   [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.average_cell_voltage" ]
        Type number : lowest_cell            [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.lowest_cell" ]
        Type number : lowest_cell_voltage    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.lowest_cell_voltage" ]
        Type number : highest_cell           [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.highest_cell" ]
        Type number : highest_cell_voltage   [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.highest_cell_voltage" ]
        Type number : delta_cell_voltage     [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.delta_cell_voltage" ]
        Type number : delta_cell_temperature [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.delta_cell_temperature" ]
        Type number : charging_cycles        [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.charging_cycles" ]
        Type string : last_update            [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.last_update" ]

        // =======================
        // Zellspannungen
        // =======================
        Type number : cell1   [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_1" ]
        Type number : cell2   [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_2" ]
        Type number : cell3   [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_3" ]
        Type number : cell4   [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_4" ]
        Type number : cell5   [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_5" ]
        Type number : cell6   [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_6" ]
        Type number : cell7   [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_7" ]
        Type number : cell8   [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_8" ]
        Type number : cell9   [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_9" ]
        Type number : cell10  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_10" ]
        Type number : cell11  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_11" ]
        Type number : cell12  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_12" ]
        Type number : cell13  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_13" ]
        Type number : cell14  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_14" ]
        Type number : cell15  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_15" ]
        Type number : cell16  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.voltage_cell_16" ]

        // =======================
        // Zelltemperaturen
        // =======================
        Type number : temp_cell1      [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.cell_temperature_1" ]
        Type number : temp_cell2      [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.cell_temperature_2" ]
        Type number : temp_cell3      [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.cell_temperature_3" ]
        Type number : temp_cell4      [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.cell_temperature_4" ]
        Type number : temp_ambient    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.ambient_temperature" ]
        Type number : temp_components [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telemetry.normal.components_temperature" ]

        // =======================
        // Systemstatus & Alarme
        // =======================
        Type string : system_status  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.system_status" ]
        Type string : alarm_cell1    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_1" ]
        Type string : alarm_cell2    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_2" ]
        Type string : alarm_cell3    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_3" ]
        Type string : alarm_cell4    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_4" ]
        Type string : alarm_cell5    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_5" ]
        Type string : alarm_cell6    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_6" ]
        Type string : alarm_cell7    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_7" ]
        Type string : alarm_cell8    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_8" ]
        Type string : alarm_cell9    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_9" ]
        Type string : alarm_cell10    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_10" ]
        Type string : alarm_cell11    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_11" ]
        Type string : alarm_cell12    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_12" ]
        Type string : alarm_cell13    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_13" ]
        Type string : alarm_cell14    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_14" ]
        Type string : alarm_cell15    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_15" ]
        Type string : alarm_cell16    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.cell_voltage_alarm_16" ]
        Type string : alarm_pack     [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.any_cell_voltage_alarm" ]
        Type string : alarm_system   [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.normal.system_status" ]

        // =======================
        // Binäre Flags / Switches / Balancer
        // =======================
        Type switch : charge_switch    [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.charge_switch" ]
        Type switch : discharge_switch [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.discharge_switch" ]

        Type switch : balancer_cell1  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_1" ]
        Type switch : balancer_cell2  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_2" ]
        Type switch : balancer_cell3  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_3" ]
        Type switch : balancer_cell4  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_4" ]
        Type switch : balancer_cell5  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_5" ]
        Type switch : balancer_cell6  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_6" ]
        Type switch : balancer_cell7  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_7" ]
        Type switch : balancer_cell8  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_8" ]
        Type switch : balancer_cell9  [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_9" ]
        Type switch : balancer_cell10 [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_10" ]
        Type switch : balancer_cell11 [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_11" ]
        Type switch : balancer_cell12 [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_12" ]
        Type switch : balancer_cell13 [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_13" ]
        Type switch : balancer_cell14 [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_14" ]
        Type switch : balancer_cell15 [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_15" ]
        Type switch : balancer_cell16 [ stateTopic="seplos/pack-0/sensors", transformationPattern="JSONPATH:$.telesignalization.binary.balancer_cell_16" ]
    }
}

Item:

Code: Alles auswählen

// =======================
// Packdaten
// =======================
Number Seplos_Pack_Voltage "Pack Voltage [%.2f V]" (Sunket)                 { channel="mqtt:topic:Seplos:SeplosBMS:pack_voltage" }
Number Seplos_Min_Pack_Voltage "Min Pack Voltage [%.2f V]" (Sunket)         { channel="mqtt:topic:Seplos:SeplosBMS:min_pack_voltage" }
Number Seplos_Max_Pack_Voltage "Max Pack Voltage [%.2f V]" (Sunket)         { channel="mqtt:topic:Seplos:SeplosBMS:max_pack_voltage" }
Number Seplos_SOC "State of Charge [%.1f %%]" (Sunket)                      { channel="mqtt:topic:Seplos:SeplosBMS:pack_soc" }
Number Seplos_Rated_Capacity "Rated Capacity [%.1f Ah]" (Sunket)            { channel="mqtt:topic:Seplos:SeplosBMS:rated_capacity" }
Number Seplos_Battery_Capacity "Battery Capacity [%.1f Ah]" (Sunket)        { channel="mqtt:topic:Seplos:SeplosBMS:battery_capacity" }
Number Seplos_Residual_Capacity "Residual Capacity [%.2f Ah]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:residual_capacity" }
Number Seplos_Discharge_Current "Discharge Current [%.2f A]" (Sunket)       { channel="mqtt:topic:Seplos:SeplosBMS:dis_charge_current" }
Number Seplos_Discharge_Power "Discharge Power [%.0f W]" (Sunket)           { channel="mqtt:topic:Seplos:SeplosBMS:dis_charge_power" }
Number Seplos_Port_Voltage "Port Voltage [%.2f V]" (Sunket)                 { channel="mqtt:topic:Seplos:SeplosBMS:port_voltage" }
Number Seplos_Average_Cell_Voltage "Average Cell Voltage [%.3f V]" (Sunket) { channel="mqtt:topic:Seplos:SeplosBMS:average_cell_voltage" }
Number Seplos_Lowest_Cell "Lowest Cell [%.0f]" (Sunket)                     { channel="mqtt:topic:Seplos:SeplosBMS:lowest_cell" }
Number Seplos_Lowest_Cell_Voltage "Lowest Cell Voltage [%.3f V]" (Sunket)   { channel="mqtt:topic:Seplos:SeplosBMS:lowest_cell_voltage" }
Number Seplos_Highest_Cell "Highest Cell [%.0f]" (Sunket)                   { channel="mqtt:topic:Seplos:SeplosBMS:highest_cell" }
Number Seplos_Highest_Cell_Voltage "Highest Cell Voltage [%.3f V]" (Sunket) { channel="mqtt:topic:Seplos:SeplosBMS:highest_cell_voltage" }
Number Seplos_Delta_Cell_Voltage "Cell Voltage Diff [%.3f V]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:delta_cell_voltage" }
Number Seplos_Delta_Cell_Temperature "Cell Temp Diff [%.1f °C]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:delta_cell_temperature" }
Number Seplos_Charging_Cycles "Charging Cycles [%.0f]" (Sunket)             { channel="mqtt:topic:Seplos:SeplosBMS:charging_cycles" }
String Seplos_Last_Update "Last Update [%s]" (Sunket)                       { channel="mqtt:topic:Seplos:SeplosBMS:last_update" }

// =======================
// Zellspannungen
// =======================
Number Seplos_Cell1 "Cell 1 [%.3f V]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:cell1" }
Number Seplos_Cell2 "Cell 2 [%.3f V]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:cell2" }
Number Seplos_Cell3 "Cell 3 [%.3f V]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:cell3" }
Number Seplos_Cell4 "Cell 4 [%.3f V]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:cell4" }
Number Seplos_Cell5 "Cell 5 [%.3f V]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:cell5" }
Number Seplos_Cell6 "Cell 6 [%.3f V]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:cell6" }
Number Seplos_Cell7 "Cell 7 [%.3f V]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:cell7" }
Number Seplos_Cell8 "Cell 8 [%.3f V]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:cell8" }
Number Seplos_Cell9 "Cell 9 [%.3f V]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:cell9" }
Number Seplos_Cell10 "Cell 10 [%.3f V]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:cell10" }
Number Seplos_Cell11 "Cell 11 [%.3f V]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:cell11" }
Number Seplos_Cell12 "Cell 12 [%.3f V]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:cell12" }
Number Seplos_Cell13 "Cell 13 [%.3f V]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:cell13" }
Number Seplos_Cell14 "Cell 14 [%.3f V]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:cell14" }
Number Seplos_Cell15 "Cell 15 [%.3f V]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:cell15" }
Number Seplos_Cell16 "Cell 16 [%.3f V]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:cell16" }

// =======================
// Zelltemperaturen
// =======================
Number Seplos_Temp_Cell1 "Cell 1 Temp [%.1f °C]" (Sunket)           { channel="mqtt:topic:Seplos:SeplosBMS:temp_cell1" }
Number Seplos_Temp_Cell2 "Cell 2 Temp [%.1f °C]" (Sunket)           { channel="mqtt:topic:Seplos:SeplosBMS:temp_cell2" }
Number Seplos_Temp_Cell3 "Cell 3 Temp [%.1f °C]" (Sunket)           { channel="mqtt:topic:Seplos:SeplosBMS:temp_cell3" }
Number Seplos_Temp_Cell4 "Cell 4 Temp [%.1f °C]" (Sunket)           { channel="mqtt:topic:Seplos:SeplosBMS:temp_cell4" }
Number Seplos_Temp_Ambient "Ambient Temp [%.1f °C]" (Sunket)        { channel="mqtt:topic:Seplos:SeplosBMS:temp_ambient" }
Number Seplos_Temp_Components "Components Temp [%.1f °C]" (Sunket)  { channel="mqtt:topic:Seplos:SeplosBMS:temp_components" }

// =======================
// Alarme / Status
// =======================
String Seplos_Alarm_Cell1 "Cell 1 Alarm [%s]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell1" }
String Seplos_Alarm_Cell2 "Cell 2 Alarm [%s]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell2" }
String Seplos_Alarm_Cell3 "Cell 3 Alarm [%s]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell3" }
String Seplos_Alarm_Cell4 "Cell 4 Alarm [%s]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell4" }
String Seplos_Alarm_Cell5 "Cell 5 Alarm [%s]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell5" }
String Seplos_Alarm_Cell6 "Cell 6 Alarm [%s]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell6" }
String Seplos_Alarm_Cell7 "Cell 7 Alarm [%s]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell7" }
String Seplos_Alarm_Cell8 "Cell 8 Alarm [%s]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell8" }
String Seplos_Alarm_Cell9 "Cell 9 Alarm [%s]" (Sunket)      { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell9" }
String Seplos_Alarm_Cell10 "Cell 10 Alarm [%s]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell10" }
String Seplos_Alarm_Cell11 "Cell 11 Alarm [%s]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell11" }
String Seplos_Alarm_Cell12 "Cell 12 Alarm [%s]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell12" }
String Seplos_Alarm_Cell13 "Cell 13 Alarm [%s]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell13" }
String Seplos_Alarm_Cell14 "Cell 14 Alarm [%s]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell14" }
String Seplos_Alarm_Cell15 "Cell 15 Alarm [%s]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell15" }
String Seplos_Alarm_Cell16 "Cell 16 Alarm [%s]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:alarm_cell16" }

String Seplos_Status_System "BMS System Status [%s]" (Sunket) { channel="mqtt:topic:Seplos:SeplosBMS:system_status" }

String Seplos_Alarm_Pack "Pack Alarm [%s]" (Sunket)         { channel="mqtt:topic:Seplos:SeplosBMS:alarm_pack" }
String Seplos_Alarm_System "System Status [%s]" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:alarm_system" }

// =======================
// Binäre Flags / Switches
// =======================
Switch Seplos_Charging "Charging Enabled" (Sunket)          { channel="mqtt:topic:Seplos:SeplosBMS:charge_switch" }
Switch Seplos_Discharging "Discharging Enabled" (Sunket)    { channel="mqtt:topic:Seplos:SeplosBMS:discharge_switch" }
Switch Seplos_Balancer_Cell1 "Balancer Cell 1" (Sunket)     { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell1" }
Switch Seplos_Balancer_Cell2 "Balancer Cell 2" (Sunket)     { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell2" }
Switch Seplos_Balancer_Cell3 "Balancer Cell 3" (Sunket)     { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell3" }
Switch Seplos_Balancer_Cell4 "Balancer Cell 4" (Sunket)     { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell4" }
Switch Seplos_Balancer_Cell5 "Balancer Cell 5" (Sunket)     { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell5" }
Switch Seplos_Balancer_Cell6 "Balancer Cell 6" (Sunket)     { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell6" }
Switch Seplos_Balancer_Cell7 "Balancer Cell 7" (Sunket)     { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell7" }
Switch Seplos_Balancer_Cell8 "Balancer Cell 8" (Sunket)     { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell8" }
Switch Seplos_Balancer_Cell9 "Balancer Cell 9" (Sunket)     { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell9" }
Switch Seplos_Balancer_Cell10 "Balancer Cell 10" (Sunket)   { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell10" }
Switch Seplos_Balancer_Cell11 "Balancer Cell 11" (Sunket)   { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell11" }
Switch Seplos_Balancer_Cell12 "Balancer Cell 12" (Sunket)   { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell12" }
Switch Seplos_Balancer_Cell13 "Balancer Cell 13" (Sunket)   { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell13" }
Switch Seplos_Balancer_Cell14 "Balancer Cell 14" (Sunket)   { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell14" }
Switch Seplos_Balancer_Cell15 "Balancer Cell 15" (Sunket)   { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell15" }
Switch Seplos_Balancer_Cell16 "Balancer Cell 16" (Sunket)   { channel="mqtt:topic:Seplos:SeplosBMS:balancer_cell16" }



Group Sunket



Zum schluss stellte sich raus, das doch Parameter angepasst werden mussten und ich nun einen Zelldrift habe. :x