Tasmota Seplos Treiber


Hello ,

Thank you for the code and the various information you have provided on this platform and on the GIT.
Is it possible for you to help me?
I am also trying to extract the data from a Spelos card. I followed all the steps you indicated (flash the ESP32 and install Tasmota / create an autoexec.be / copy the contents of your .be file to a file called "rs485.be").
but I still can't see the results. Did I miss a step?
Do I have to configure MQTT?
Do I have to configure the different outputs and inputs?

I wish you a nice day .
Which rs484 module you are using ?
Can you share a photo of the esp module and the rs485 (module) wiring ?
Do you have configured RX TX in Tasmota ?

Best regards

LuFi
i am using this module:
ARCELI 5PCS 5V MAX485 / RS485 Module TTL to RS-485 MCU Development Board
https://www.amazon.fr/ARCELI-MAX485-Module-RS-485-Development/dp/B0785B3BS8/ref=pd_lpo_1?pd_rd_i=B0785B3BS8&psc=1#customerReviews

And for the ESP32 i am using ESP32 NodeMCU Module WLAN WiFi Development Board avec CP2102 (modèle successeur de ESP8266) compatible avec Arduino
https://www.az-delivery.de/fr/products/esp32-developmentboard

Foe the wiring i have connected DI to G16 / DE and RE to G33 /RO to 17

yes i have configurd TX(16) and RX(17)

Sry, but i'am not really sure that this module will work.
Normally you need a Serial <-> rs485 converter.
But i'am not sure, that this RO RE DI DE pins produce serial. This is something you need to test.
You can manually connect this from ESP32 console and do some sniffing.
While Seplos Battery Monitor is connected you should see something.

Or better use a different converter

Best Regards

Sry, but i'am not really sure that this module will work.
Normally you need a Serial <-> rs485 converter.
But i'am not sure, that this RO RE DI DE pins produce serial. This is something you need to test.
You can manually connect this from ESP32 console and do some sniffing.
While Seplos Battery Monitor is connected you should see something.

Or better use a different converter

Best Regards
Hello ,

I think it's the same operation just by different supplier.
The RE represents Rx and RO represents Tx.
I just want to understand something.
What you have is a solution that allows you to collect battery data using the ESP32 and the RS485 TTL Module without using Seplos software. Then post them on the Tasmota website.

Best Regards

Exactly, this .be module you uploaded to the ESP is a Driver which permanently watches the serial and decode this ASCII Binary info into MQTT.

Do you see anything within the script console ?

Best Regards

Nur das Forum war kurz Tod, nicht der Thread ?

melde dich einfach nochmal, wenn du das fixen möchtest

gruß

LuFi

Hallo zusammen, hallo LuFi

ich habe die Tage auch versucht das Ganze einmal nachzubauen. Wenn ich den Treiber entweder in der Konsole oder als .be Datei zum Laufen bekommen möchte, erscheint immer eine Meldung:

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

weder im Tasmota Webinterface des rsp32, noch im Broker erscheinen Daten der Batterie.
Viele Grüße
Andreas

Schau in Tasmota zB per Dateimanager in die .be - schätze Du hast da eine html-Seite gespeichert. Gehe in GitHub auf die Datei und zeige den Inhalt als RAW an, dann copy&paste des Inhalts in die Datei per Editor funktioniert sicher.

So bin ich auch vorgegangen, leider erneut mit demselben Resultat. Daher bin etwas ratlos.

Ich stehe vor demselben Fehler. ESP32 frisch aufgesetzt via Webinstall.

Wenn ich das Script aus Github/Raw kopiere und direkt über die Berry Console ausführe kommt die bekannte Fehlermeldung.

Gleiches, wenn ich per autoexec.be & rs485.be nach Reboot automatisch starten will:

00:00:00.876 BRY: failed to load '/rs485.be' (syntax_error - /rs485.be:269: 'rs485Driver' undeclared (first use in this function))

Ich bin nun gerade noch jede einzelne Zeile durchgegangen und habe die Einschübe entfernt (also alles an Zeilenposition 1 gezogen), Fehler ist gleich geblieben. Dann habe ich Leerzeilen und Leerzeichen am Ende der Zeilen entfernt, keine Veränderung.

Könntest du sonst mal eine .be hier hochladen, die definitiv funktioniert?

Ich wüsste nicht, wie ich jetzt noch vorgehen sollte...

Ich wünsche ein frohes Fest,

nach mehreren Maßnahmen tat sich der Fehler bei mir inzwischen gegeben. Leider kann ich nicht genau sagen welche der Einzelmaßnahmen zum Erfolg geführt haben. Für die .be Datei habe ich das RAW Script von rs485.be update v0.2 verwendet. So wie es ist, mit allen Einrückungen. Ich denke hier hat der Fehler auch nicht seine Ursache. Zudem habe ich vom RS485 Adapter die Anschlüsse alle noch einmal nachgelötet. Beim Anschluss an das BMS sollten die zwei kleinen LEDs auf dem Adapter hin und wieder aufleuchten um Kommunikation auf den RX und TX Anschlüssen anzuzeigen. Danach lief es und die meldung war weg.
Bei der Integration in den IO-Broker über MQTT werden aber leider nur die zwei Werte Current und Voltage übermittelt.

Hallo zusammen,

ich hab es nun auch zum Laufen bekommen. Ich hatte tatsächlich noch die V0.1 genutzt und das Ganze immer nur ohne Verbindung zum Seplos getestet.

Irgendwann muss ich dabei das RS485 Board gegrillt haben (oder es hat nie funktioniert), aber schlußendlich bekomme ich mit einem neuen Board und der Raw der V0.2 Werte vom BMS. Bei mir fehlen auch keine, ich sehe alle Zellspannungen, Max, Min, Diff, Temps, SoC usw.

Hi LuFi,

Mit welche Version von tasmota läuft es? Hast du selber Tasmota Kompiliert? Oder wie hast du das gemacht?
Gruß Max

N'abend zusammen,

erstmal vielen Dank für die Arbeit @LuFi.

Magst du mal nach der MQTT Updatefrequenz schauen?

Er updated nur sehr sporadisch, manchmal sendet er fast 10min lang nichts (In der Tasmota GUI updaten sich die Werte aber) TX und RX blinken auch öfter auf.

Super wäre einfach ein Update bei Werteänderung oder das man im Script festlegen kann wie oft er abfragen soll (alle x sekunden).

Danke und Grüße,

equi

Hat jemand das auch mal mit LAN anstatt WiFi hinbekommen ?

Geht das mit sowas hier ? : https://eckstein-shop.de/WaveshareLAN8720ETHBoardEthernetmodule2C10100EthernetTransceiverLAN8720onboardoder

Viele Grüße

Ralf

@rasti was ist das? Dein Link führt zum ein Fehler.

@maxi Waveshare LAN8720 ETH Board Ethernet module, 10 100 Ethernet Transcei, 10,95 €

@rasti Ich glaube, es wird nicht funktionieren, aber mit WT32-ETH01 geht es bestimmt. Muss man halt die richtigen Pins raussuchen, oder in Script abändern.

Leider sehe ich keine Zellspannungen usw. sondern nur so etwas wie count Verbindungsversuche oder allgemeine Informationen.

Die Konsole spukt u.a. das hier aus.

18:01:26.867 MQT: tele/tasmota_29D82C/STATE = {"Time":"2023-01-31T18:01:26","Uptime":"0T00:15:58","UptimeSec":958,"Heap":131,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Berry":{"HeapUsed":20,"Objects":299},"Wifi":{"AP":1,"SSId":"BND_Funkwagen_12","BSSId":"BC:EE:7B:7E:A6:E8","Channel":6,"Mode":"11n","RSSI":54,"Signal":-73,"LinkCount":1,"Downtime":"0T00:00:02"}}
18:01:26.877 MQT: tele/tasmota_29D82C/SENSOR = {"Time":"2023-01-31T18:01:26","seplos":{}}

Im file Manager kann ich das hier sehen.

BRY: failed to load '/rs485.be' (syntax_error - /rs485.be:262: 'rs485Driver' undeclared (first use in this function))

Warum kriege ich diesen Fehler :frowning:

Woran liegt das?

@pandafahrer

Wieviele Seplos hast du denn ?

Es hat den Anschein das es kein BMS mit der Adresse 0 gibt.

Gruß

Da hängt nur ein einzelnes 200A BMS (Hardware Version noch ohne Bluetooth) an einem CAN Bus….

Das Pack ist ganz normal eingestellt. Alle DIP Switches off.