Tasmota Seplos Treiber

N'Abend zusammen,

ich habe bzw. hatte das gleiche Problem. Sobald mehr als ein Pack dranhängt kommt nur noch Kauderwelsch. Ich hatte noch versucht über die magere Doku was rauszuholen habe es aber letztlich aufgegeben da ich den Aufbau der Datenpakete nicht rausbekommen. Lt. Seplos selbst ist dieses Verhalten by Design und selbst ihre eigene Software kann die Daten vom Master nicht auslesen sobald mehr als eins im Verbund ist. Soweit ich weiß gilt das für die CAN Versionen. Ich meinen Frieden damit gefunden die Daten aus den zusätzlichen Balancer auszulesen.

Mit einem Pack läuft der Treiber aber super! Gute Arbeit

Hat jemand eine Idee , ich komme nicht weiter....

Nachdem wie bei einigen schon dieser Fehler aufgetreten ist konnte ich durch auskommentieren der zeile 269 das script ausfüren.

BRY: Exception> 'syntax_error' - input:269: 'rs485Driver' undeclared (first use in this function)

Zeile 269

tasmota.remove_driver(rs485Driver)

Nun erhalte ich zwar werte allerings mit einem fehler mit dem ich nix anfangen kann.

        end
end
end
#tasmota.remove_driver(rs485Driver)
rs485Driver = rs485()
tasmota.add_driver(rs485Driver)
{'Temperature': [22.4, 20.8, 20.4, 22.1, 27.7, 24.7], 'Current': 8.8, 'PortVoltage': 54.05, 'SOC': 94.5, 'SOH': 100, 'BatteryCapacity': 280, 'CycleLife': 0.13, 'RemainingCapacity': 264.79, 'Cell': [3374, 3376, 3376, 3374, 3375, 3376, 3376, 3376, 3376, 3376, 3378, 3375, 3377, 3376, 3375, 3373], 'PackVoltage': 54.01, 'RatedCapacity': 280}
[3374, 3376, 3376, 3374, 3375, 3376, 3376, 3376, 3376, 3376, 3378, 3375, 3377, 3376, 3375, 3373]
{}
BRY: Exception> 'attribute_error' - the 'seplos' object has no attribute 'Cell'
{}
BRY: Exception> 'attribute_error' - the 'seplos' object has no attribute 'Cell'
{}
BRY: Exception> 'attribute_error' - the 'seplos' object has no attribute 'Cell'

Nachtrag sobald ich das script einmal manuell ohne zeile 269 ausgefürt habe kann ich das script nun manuell jedesmal starten mit zeile 269 einkomentiert und es erscheinen keine fehler mehr.

    end
end
tasmota.remove_driver(rs485Driver)
rs485Driver = rs485()
tasmota.add_driver(rs485Driver)
{'Temperature': [22.4, 20.8, 20.4, 22.1, 27.7, 24.7], 'Current': 8.93, 'PortVoltage': 54.08, 'SOC': 95.1, 'SOH': 100, 'BatteryCapacity': 280, 'CycleLife': 0.13, 'RemainingCapacity': 266.35, 'Cell': [3376, 3378, 3378, 3375, 3377, 3378, 3377, 3378, 3378, 3378, 3380, 3376, 3379, 3377, 3376, 3375], 'PackVoltage': 54.04, 'RatedCapacity': 280}
[3376, 3378, 3378, 3375, 3377, 3378, 3377, 3378, 3378, 3378, 3380, 3376, 3379, 3377, 3376, 3375]

Auf der Tasmota Startseite sehe ich aber keine werte abgebildet wie in euren screenshot

@xmannix

kopiere dir das Script neu, und entferne die Zeile komplett.

Danach starte den ESP neu.

Gruß

Hab das Script (rs485_v2.be) von github (raw) nochmal kopiert und ohne der Zeile auf dem esp abgelet.
Nach dem Reboot sehe ich in der console wie es asugeführt wird , aber wieder mit diesem Fehler (Anhang)
Ein copy paste fehler halte ich für ausgeschlossen.

@xmannix

Wie sind die DIP switches am Seplos konfiguriert ?

Hast du mehrere BMS ?

Welches Script verwendest du ? Nimm bitte mal

rs485.be

Gruß

Es handelt sich nur um ein BMS (200A), die Dip Switche stehen alle auf 0.
Die Werte die ankommen sind auch plausible und richtig.
Auch kann ich mich ohne Probleme mit der Battery Monitor Software von Seplos verbinden und mir alles anzeigen lassen.

Welches Script nutzt du ?

Wie oben schon geschrieben bezieht sich alles auf das rs485_v2.be
https://github.com/Lu-Fi/tasmota-seplos-driver/blob/main/rs485_v2.be
Na toll ich idiot dachte das v2 wäre ein hinweiss auf die "zweite version" mit dem rs485.de erhalte ich nun werte in der Tasmota Gui.

Und auch im iobroker kommen alle werte an.
Danke für deine Hilfe @LuFi

@xmannix

Sry, ich hab das v2 mal gelöscht, damit es keine Verwirrung stiftet.c

Wolte dich schon fragen on es sinn machen wurde das zu löschen oder einen hinweiss dazu in der Readme zu geben.
Danke für deine arbeit an dem Projekt.
Ich kann nun mit den Daten im Iobroker schön rumspielen und diese schön Visualisieren.
Nutze dazu einen Ulanzi TC001 , das ganze sieht dann so aus

@xmannix

Ich habe mir eine kleine GUI auf ein günstiges Fire Tablet gebeamt.
Immer alles im Blick :wink:

Hallo in die Runde,

hat jemand den Adapter mit einem 10E BMS am Laufen? Ich erhalte keine Werte.

Konsole sieht bei mir wie folgt aus:

19:58:42.273 MQT: Attempting connection...
19:58:42.308 MQT: Connected
19:58:42.313 MQT: tele/tasmota_303828/LWT = Online (retained)
19:58:42.315 MQT: cmnd/tasmota_303828/POWER =
19:58:42.334 MQT: tele/tasmota_303828/INFO1 = {"Info1":{"Module":"ESP32-DevKit","Version":"13.0.0(tasmota32)","FallbackTopic":"cmnd/DVES_303828_fb/","GroupTopic":"cmnd/tasmotas/"}}
19:58:42.350 MQT: tele/tasmota_303828/INFO2 = {"Info2":{"WebServerMode":"Admin","Hostname":"tasmota-303828-6184","IPAddress":"192.168.178.51","IP6Global":"","IP6Local":"fe80::32c6:f7ff:fe30:3828"}}
19:58:42.368 MQT: tele/tasmota_303828/INFO3 = {"Info3":{"RestartReason":"Software reset CPU","BootCount":29}}
19:58:42.749 MQT: stat/tasmota_303828/RESULT = {"Command":"Error"}
19:58:42.799 MQT: stat/tasmota_303828/RESULT = {"Command":"Error"}
19:58:42.851 MQT: stat/tasmota_303828/RESULT = {"Command":"Error"}
19:58:44.379 MQT: stat/tasmota_303828/RESULT = {"Command":"Error"}
19:58:45.870 QPC: Reset
19:58:46.874 MQT: tele/tasmota_303828/STATE = {"Time":"2023-07-23T19:58:46","Uptime":"0T00:00:08","UptimeSec":8,"Heap":91,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Berry":{"HeapUsed":20,"Objects":294},"Wifi":{"AP":1,"SSId":"NaDb","BSSId":"34:81:C4:CB:C9:5B","Channel":13,"Mode":"11n","RSSI":100,"Signal":-30,"LinkCount":1,"Downtime":"0T00:00:03"}}
19:58:46.916 MQT: tele/tasmota_303828/SENSOR = {"Time":"2023-07-23T19:58:46","seplos":{}}
19:58:51.850 MQT: tasmota/discovery/30C6F7303828/config = {"ip":"192.168.178.51","dn":"Tasmota","fn":["Tasmota",null,null,null,null,null,null,null],"hn":"tasmota-303828-6184","mac":"30C6F7303828","md":"ESP32-DevKit","ty":0,"if":0,"ofln":"Offline","onln":"Online","state":["OFF","ON","TOGGLE","HOLD"],"sw":"13.0.0","t":"tasmota_303828","ft":"%prefix%/%topic%/","tp":["cmnd","stat","tele"],"rl":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"swc":[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],"swn":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"btn":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"so":{"4":0,"11":0,"13":0,"17":0,"20":0,"30":0,"68":0,"73":0,"82":0,"114":0,"117":0},"lk":0,"lt_st":0,"sho":[],"sht":[],"ver":1} (retained)
19:58:51.934 MQT: tasmota/discovery/30C6F7303828/sensors = {"sn":{"Time":"2023-07-23T19:58:51","seplos":{}},"ver":1} (retained)

@sentiq Den Fehler hatte ich auch aber bei mir lag es an falschen Adern beim RS485 / RJ45 Adapter. Schau mal nach, ob du die Kontakte 1,2 und 3 beim RJ45 Stecker verbunden hast. Die Farbe sollte bei vielen Kabeln Orange/Weiß, Orange, Grün/Weiß sein. Weiter vorne im Thread sind Infos dazu.

@marquies tausend Dank, ich war fest der Meinung bei mir wäre Pin 3 blau/weiß. Nun geht es.

Ich habe in letzter Zeit mit der Firmware vom Seplos BMS (200A / 10E mit Bluetooth) rumgespielt und dabei folgende Dinge bemerkt. Vielleicht hilft das ja dem ein oder anderen.

Version 16.04:

  • die Baudrate muss auf 9600 anstatt 19200 umgestellt werden

  • das muss auch im Skript rs485.be geändert werden, damit weiterhin Daten kommen

  • WICHTIG: Die Daten sind dann zum Teil fehlerhaft und unsinnig. Ich hatte Datensätze mit 400 % SOC, 150 V Anschlussspannung und 7 V Zellenspannung. Das wirf die Visualisierung ziemlich durcheinander. Bilder dazu im Anhang.

Version 16.07:

  • Funktioniert einwandfrei mit dem Skript

  • lediglich die Bluetooth Funktion vom BMS geht dann nicht mehr. Das wurde hier im Forum (siehe Seplos FAQ) ausgiebig besprochen

aktuelle Version 16.06:

  • läuft auch einwandfrei incl. Bluetooth

  • auch hier kann die Baudrate auf 19200 bleiben

1 „Gefällt mir“

Hallo Zusammen,

danke für das tolle Projekt. alles aufspielen und es läuft, selbst für mich als Anfänger. ? ? ? ?

Ich hatte erst ein paar Probleme da ich es mit einen WT32-ETH01 versucht habe. Aber jetzt auf einem "normalen" ESP32 ging es dann ganz schnell und einfach.

Sollte jemand eine WT32-ETH01 benutzen würde ich mich freuen wenn ich ein paar Infos bekommen könnte wie es eingestellt ist.

@lufi Mensch das sieht ja mega aus, wie ertsellt man GUI ?

Gruß

Tut mir leid, aber ich muss leider sagen, mit einem Texteditor.
Die Daten werden mittels NodeRed aus Fhem und Homeassistant geholt und über ein Websocket an die Webseite geliefert.
Die Webseite nutzt dann Javascript.

Wenn Interesse besteht und du etwas von HTML, JS und NodeRed verstehst kann ich das Grundgerüst bereitstellen.

Gruß

LuFi

Mein fehler

@lufi nice! welches Smarthomesystem?