Benachrichtigungen
Alles löschen

noch mehr DALY BMS

93 Beiträge
17 Benutzer
0 Likes
16.6 K Ansichten
(@bastler0815)
Batterielecker
Beigetreten: Vor 2 Jahren
Beiträge: 334
 

Ich versuche mich gerade auch an der Anbindung des Daly-BMS
Eigentlich benötige ich nur was das mir die Werte per MQTT zur Verfügung stellt - der Aufwand mit Raspi ist mir zu groß nur für dieses eine BMS

Leider will es noch nicht ganz so wie ich will:

Ich will eigentlich den BT-Dongle behalten - deshalb die RS485-Schnittstelle nutzen
Ich habe mir hier hierzu einen Adapter mit MAX485 zusammen gelötet

Mit der TOPBMS Software und USB-UART-Adapter funktioniert das am PC sehr gut
Leider aber nicht mit ESPHome - da blinkt nur die TX-LED traurig vor sich hin

Ist das UART-Protokoll überhaupt das Gleiche wie über RS485?
Funktioniert ESPHome über RS485 bei jemand?

Viele Grüße

mein Speicher: BMW G05 45e


   
AntwortZitat
(@dnwalker)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 36
 

Hallo,

mit dem RS485 habe ich noch keine Versuche unternommen.

Da ein ESP mit ESPHome ja nur auf den ausgehenden Meldungen des BMS auf dem UART Port mithört und keine Meldungen zum BMS sendet wäre die Frage was passiert wenn Du die ein Adapterkabel herstellst das
zwischen BMS und BT-Modul eingeschleift wird und du den vom BMS aus gesehen TX-Port zusätzlich zum ESP leitest.

Im ESP kannst Du die Meldungen in MQTT umwandeln und so weiter auf den MQTT Broker senden.

Getestet habe ich das noch nicht aber ein Versuch könnte ja nicht schaden.

So kommst Du um den RS485Port komplett herum.

Gruß
Dieter


   
AntwortZitat
(@wulleontour)
Newbie
Beigetreten: Vor 2 Jahren
Beiträge: 4
 

Hallo Zusammen

versuche auch ein Daly 4s mit einem Raspberry auszulesen.
Das Problem, fast alle Projekt sind für das Daly BMS 8s und mehr.
Die Daly BMSs unter 8s haben einen andern Chip, den von Sinowealth, leider nicht gleich mit Dalys eigener Software.

Warum mit einem Raspberry auslesen und kein ESP. Auf dem Pi läuft bei mir schon Grafana und alles was dazugehört. Es wird damit erfolgreich ein Victron Solarregler ausgelesen.

Projekte wie :
https://github.com/njfaria/dalylog
sind leider für die 4s Version nicht geeignet. Auch sind die meisten ESP Skripte nicht für ein Sinowealth Chip Daly BMS.

Das einzige Projekt wo ich in der Kommandozeile mal eine Antwort von BMS bekommen habe, das war dieses: https://pypi.org/project/dalybms/
Es gibt dort auch die Möglichkeit die Daten peer Mqtt zu übertragen.
Da ist bei mir aber ende, da bei mir Error auftauchen und ich leider damit nichts anfangen kann.

2 Projekt, das wohl auch eine DalyBMS mit Sinowealth Chip auslesen kann, ist wohl ein mit ESP_Home.
Dort bin ich aber totaler Neuling und würde die Daten dann auch gerne direkt vom ESP zum Mqtt Brocker schicken lassen, ohne den Umweg einer ESP-Home Instanz:
https://esphome.io/components/sensor/daly_bms.html
Kann ich dort, wie beim Webserver auch einfach das Mqtt Programm dazu schreiben ??

Gruß Wulle
PS. ja was viel, aber vielleicht hat einer zeit und kann mir helfen


   
AntwortZitat
(@bastler0815)
Batterielecker
Beigetreten: Vor 2 Jahren
Beiträge: 334
 

Hallo Wulle,

bei mir geht es mit ESPhome - aber ich benutze sonst auch für das BMS nicht die Sinowealth Software sondern TOPBMS

Ich vermute auch die ESPHome Geschichte wird bei Dir nicht funktionieren

VG

mein Speicher: BMW G05 45e


   
AntwortZitat
(@wulleontour)
Newbie
Beigetreten: Vor 2 Jahren
Beiträge: 4
 

Hallo Bastler0815,

hast du ein 4s System oder was fährst du für einen Akku.
Also 4s sollten alle über Sinowealth gehen. TOPBMS sagt mir jetzt nicht genau was es ist. Hast du mal einen Link ?
Google spuckt bei TOPBMS alles mögliche aus

Gruß Wulle


   
AntwortZitat
(@dnwalker)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 36
 

Hallo Zusammen

versuche auch ein Daly 4s mit einem Raspberry auszulesen.
Das Problem, fast alle Projekt sind für das Daly BMS 8s und mehr.
Die Daly BMSs unter 8s haben einen andern Chip, den von Sinowealth, leider nicht gleich mit Dalys eigener Software.

Warum mit einem Raspberry auslesen und kein ESP. Auf dem Pi läuft bei mir schon Grafana und alles was dazugehört. Es wird damit erfolgreich ein Victron Solarregler ausgelesen.

Projekte wie :
https://github.com/njfaria/dalylog
sind leider für die 4s Version nicht geeignet. Auch sind die meisten ESP Skripte nicht für ein Sinowealth Chip Daly BMS.

Das einzige Projekt wo ich in der Kommandozeile mal eine Antwort von BMS bekommen habe, das war dieses: https://pypi.org/project/dalybms/
Es gibt dort auch die Möglichkeit die Daten peer Mqtt zu übertragen.
Da ist bei mir aber ende, da bei mir Error auftauchen und ich leider damit nichts anfangen kann.

2 Projekt, das wohl auch eine DalyBMS mit Sinowealth Chip auslesen kann, ist wohl ein mit ESP_Home.
Dort bin ich aber totaler Neuling und würde die Daten dann auch gerne direkt vom ESP zum Mqtt Brocker schicken lassen, ohne den Umweg einer ESP-Home Instanz:
https://esphome.io/components/sensor/daly_bms.html
Kann ich dort, wie beim Webserver auch einfach das Mqtt Programm dazu schreiben ??

Gruß Wulle
PS. ja was viel, aber vielleicht hat einer zeit und kann mir helfen

Bei der 2. Lösung (espHome) kannst Du alle Werte die dort abgefragt werden auch direkt per MQTT an einen Broker senden. In der dort angegebenen minimalen Konfig werden die Daten direkt zu Home Assistent gesendet.
Gruß
Dieter


   
AntwortZitat
PanicMan
(@panicman)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 142
 

Hallo zusammen,

ich schalte mich auch mal hier ein.
Habe vorgestern meinen Akku fertiggestellt und alles angeschlossen, bis jetzt alles prima, ist ein 4S 60A Daly BMS, das BMS zeigt in der App alles korrekt an.
Jetzt habe ich mich mal an die Smarthome Anbindung gemacht und habe da so meine Probleme.

Also folgendes habe ich schon:
- einen D1 mini, ist kein original wemos, aber müsste idetisch sein.
- ESPhome Commandline, alles funktioniert, habe gebaut und auf das Teil geflasht:
esphome run daly_bms.yaml
←[32mINFO Reading configuration daly_bms.yaml...←[0m
←[33mWARNING 'daly_bms': Using the '_' (underscore) character in the hostname is discouraged as it can cause problems with some DHCP and local name services. For more information, see https://esphome.io/guides/faq.html#why-shouldn-t-i-use-underscores-in-my-device-name← [0m
←[32mINFO Generating C++ source...←[0m
←[32mINFO Compiling app...←[0m
Processing daly_bms (board: d1_mini; framework: arduino; platform: platformio/espressif8266 @ 3.2.0)
------------------------------------------------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif8266/d1_mini.html
PLATFORM: Espressif 8266 (3.2.0) > WeMos D1 R2 and mini
HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash
PACKAGES:
- framework-arduinoespressif8266 3.30002.0 (3.0.2)
- tool-esptool 1.413.0 (4.13)
- toolchain-xtensa 2.100300.210717 (10.3.0)
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ off, Compatibility ~ soft
Found 39 compatible libraries
Scanning dependencies...
Dependency Graph
|-- <ESPAsyncTCP-esphome> 1.2.3
|-- <ESPAsyncWebServer-esphome> 2.1.0
| |-- <ESPAsyncTCP-esphome> 1.2.3
| |-- <Hash> 1.0
| |-- <ESP8266WiFi> 1.0
|-- <DNSServer> 1.1.1
|-- <ESP8266WiFi> 1.0
|-- <ESP8266mDNS> 1.2
|-- <AsyncMqttClient-esphome> 0.8.6
| |-- <ESPAsyncTCP-esphome> 1.2.3
|-- <ArduinoJson> 6.18.5
Building in release mode
Compiling .pioenvsdaly_bmssrcmain.cpp.o
Linking .pioenvsdaly_bmsfirmware.elf
Retrieving maximum program size .pioenvsdaly_bmsfirmware.elf
Checking size .pioenvsdaly_bmsfirmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM: [==== ] 41.2% (used 33724 bytes from 81920 bytes)
Flash: [==== ] 42.1% (used 439361 bytes from 1044464 bytes)
Building .pioenvsdaly_bmsfirmware.bin
Creating BIN file ".pioenvsdaly_bmsfirmware.bin" using "C:UsersPanicMan.platformiopackagesframework-arduinoespressif8266bootloadersebooteboot.elf" and ".pioenvsdaly_bmsfirmware.elf"
esp8266_copy_factory_bin([".pioenvsdaly_bmsfirmware.bin"], [".pioenvsdaly_bmsfirmware.elf"])
============================================= [SUCCESS] Took 7.45 seconds =============================================
←[32mINFO Successfully compiled program.←[0m
Found multiple options, please choose one:
[1] COM4 (USB-SERIAL CH340 (COM4))
[2] Over The Air (daly_bms.local)
(number): 1
esptool.py v3.3.1
Serial port COM4
Connecting....
Chip is ESP8266EX
Features: WiFi
Crystal is 26MHz
MAC: 48:55:19:c8:c5:f6
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Changed.
Configuring flash size...
Auto-detected Flash size: 4MB
Flash will be erased from 0x00000000 to 0x0006cfff...
Compressed 443520 bytes to 305574...
Wrote 443520 bytes (305574 compressed) at 0x00000000 in 7.5 seconds (effective 474.1 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...
←[32mINFO Successfully uploaded program.←[0m
←[32mINFO Starting log output from COM4 with baud rate 115200←[0m
[18:35:09] ♀xecrl lx90r☻$↕xe2n♀♀♀xc4♀lxc7♀b|x8ex90☻↕x92r↕bxc4♀b♦xf2nn☻lnn↕b♀b∟px8c$b♫lrlpxf2n►☻♀♀x90♀l♀x8c☻♀♀♀b♀nxe2nxc7♀xc4♦♀bxc4xf2nn'lx8c♦l`☻x90↕↕nn♀$`☻♫♥nrx8ex92x92n♀♀rrx92`☻pxf2n►☻♀♀rx8c∟∟b♀♦☻♀b♀nxe2n♀♦♀bxc4xf2nn'♀♦l`☻x90↕↕nn♀$`☻♫☻nrx8ex92x92n♀♀r↕l`☻♫rx92x92n♀♀r↕l`☻x9c☻♀♀x8c♫x90♀♀l`☻xfcx82nx92`☻ [logger]: Log initialized

Hier meine yaml Datei:
esphome:
name: daly_bms

esp8266:
board: d1_mini

# Enable logging
logger:

ota:
password: ""

wifi:
ssid: "Panic's WLAN 2.4"
password: "xxxxxxx"

# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Daly Bms Fallback Hotspot"
password: "4um55rWg2Oo0"

captive_portal:

mqtt:
broker: 192.168.178.9
username: openhabian
password: xxxxx

web_server:
port: 80
auth:
username: admin
password: xxxxx

uart:
tx_pin: GPIO1
rx_pin: GPIO3
baud_rate: 9600

daly_bms:
update_interval: 10s

sensor:
- platform: daly_bms
voltage:
name: "Battery Voltage"
current:
name: "Battery Current"
battery_level:
name: "Battery Level"
max_cell_voltage:
name: "Max Cell Voltage"
max_cell_voltage_number:
name: "Max Cell Voltage Number"
min_cell_voltage:
name: "Min Cell Voltage"
min_cell_voltage_number:
name: "Min Cell Voltage Number"
max_temperature:
name: "Max Temperature"
max_temperature_probe_number:
name: "Max Temperature Probe Number"
min_temperature:
name: "Min Temperature"
min_temperature_probe_number:
name: "Min Temperature Probe Number"
remaining_capacity:
name: "Remaining Capacity"
cells_number:
name: "Cells Number"
temperature_1:
name: "Temperature 1"
temperature_2:
name: "Temperature 2"
cell_1_voltage:
name: "Cell 1 Voltage"
cell_2_voltage:
name: "Cell 2 Voltage"
cell_3_voltage:
name: "Cell 3 Voltage"
cell_4_voltage:
name: "Cell 4 Voltage"

text_sensor:
- platform: daly_bms
status:
name: "BMS Status"

binary_sensor:
- platform: daly_bms
charging_mos_enabled:
name: "Charging MOS"
discharging_mos_enabled:
name: "Discharging MOS"

So, habe jetzt beim BMS in der App die Wartezeit auf 15300 gestellt, dann Bluetooth Dongle abgezogen und den D1 mini angeschlossen:
TX an den ersten Pin vom UART, RX an den zweiten Pin, 3V3 an den vorletzten Pin und G an den letzten Pin.

Kann mich an die Web-Oberfläche connecten, zeigt leider keine Daten an, Herz pulsiert:

MQTT Server kriegt auch Daten:
daly_bms/debug : msg.payload : buffer[76]
[0;32m[ota]: Boot seems successful, resetting boot loop counter.[0m
daly_bms/status : msg.payload : string[6]
"online"

So sieht meine Hardware aus:

Bin mir ziemlich sicher dass ich alles richtig angeschlossen habe, habe aber auch mal RX/TX vertauscht, keine Veränderung.
Software Version die im BMS angezeigt wird: 34_220323_100T

Eine Idee was falsch ist? Irgendwas was ich noch ausprobieren könnte?

Vielen Dank!


   
AntwortZitat
(@jarek)
Batterielecker
Beigetreten: Vor 2 Jahren
Beiträge: 291
 

Edit: die erste Frage zurückgezogen... (hab was verwechselt :think: )
ich habe es ohne + angeschlossen... und dann hab ich auch verschiedene Pin-Belegungen bei den Buchsen gesehen... Hast du mit einem USB/UART Kabel am Rechner die Verbindung getestet (mit PC-Master oder so)
https://forum.drbacke.de/viewtopic.php?p=33749#p33749


   
AntwortZitat
PanicMan
(@panicman)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 142
 

Nein, habe ich noch nicht, ich habe so ein Teil Zuhause:

Damit flashe ich normalerweise Geräte mit einem ESP8266 Chip auf Tasmota und so, damit müsste es doch eigentlich auch gehen, oder?
Dann aber nur GND+TX+RX anschließen und in den USB stecken...
Muss ich mal heute Abend ausprobieren... Muss ich eigentlich das BMS irgendwie neu starten, wenn ich das Dongle raus ziehe und was anderes anschließe?

Und wenn du bei dir den D1 mini ohne das "+" anschließt, woher nimmt es seinen Strom?

Laut dem Schema hier, das steht da wo ich es gekauft habe, habe ich alles korrekt angeschlossen, und beim Interface steht auch UART dran, müsste also eigentlich funktionieren.

Wenn man die UART-Pins 2+4 kurz verbindet müsste es das Teil eigentlich aufwecken, oder Power Board Pins 2+3, muss mal schauen ob ich da überhaupt Spannung drauf habe...


   
AntwortZitat
(@jarek)
Batterielecker
Beigetreten: Vor 2 Jahren
Beiträge: 291
 

Hi,
bei mir ist die Pinbelegung eben anders... also wenn es wirklich nichts mehr geht versuche einfach anders anzuschließen. (GND links)
Durchstarten war (bei mir) nicht notwendig. Kommunikation war auch da wenn das Laden/Entladen deaktiviert war - aber es gibt eben so viele Varianten...
So ein Adapter hab ich auch. Es auch unter Windows und Linux funktioniert. Ich glaube sogar: am Adapter wirst sogar gleich sehen ob etwas empfangen wird (LED blinkt in anderer Farbe)
EDIT:
D1 versorge ich mit MiniUSB - aber wenn du es vom BMS versorgst - und auf die ESPHome Seite kommst dann sollte bei dir die Pinbelegung doch Stimmen... :think:


   
AntwortZitat
PanicMan
(@panicman)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 142
 

So ein Adapter hab ich auch. Es auch unter Windows und Linux funktioniert. Ich glaube sogar: am Adapter wirst sogar gleich sehen ob etwas empfangen wird (LED blinkt in anderer Farbe)
D1 versorge ich mit MiniUSB - aber wenn du es vom BMS versorgst - und auf die ESPHome Seite kommst dann sollte bei dir die Pinbelegung doch Stimmen... :think:

Ja, das mit den LED's am TTL Adapter ist eine gute Idee, stimmt, das würde man da sehen... Und ja, genau, wenn ich das Board falsch herum angeschlossen hätte würde es ja nicht laufen...
Habe auch die Kontakte zwischen den Pins und dem ESP Chip durchgemessen, alles korrekt...
Was aber sein kann, dass für die Pins die Spannung nicht mehr ausreicht, weiß ja nicht wie stabil die Spannung am BMS ist, muss es mal per USB an ein Handy-Ladergerät oder so anschließen...
Aber ich habe jetzt ein paar Sachen die ich heute Abend ausprobieren kann...


   
AntwortZitat
PanicMan
(@panicman)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 142
 

Moin, so, leider ist gestern irgendwas schief gegangen, ich frage mich nur was... :think:

Habe den ESP an GND, RX und TX angeschlossen, dann den USB Stecker rein, nichts ist passiert, der ESP hat nicht gestartet (sieht man immer an dem kurzen Aufleuchten der WLAN LED).
Habe dann wieder alles abgesteckt, den ESP mal direkt nur an das USB-Kabel angeschlossen, hat gestartet, natürlich ohne Daten. Habe dann im gestarteten Zustand GND+RX+TX angeschlossen, lief weiter, immer noch keine Daten.
Ok, habe dann wieder alles abgesteckt, den BT-Dongle dran, kein Mucks, auch nicht nach dem Drücken auf die Taste. Habe das Balancer-Kabel abgesteckt etwas gewartet, wieder dran gesteckt, immer noch nichts.
Habe dann bemerkt dass die Status-LED beim Ladegerät aus war, die leuchtet normal wenn die Kontakte am P- und P+ Spannung haben, das Ladegerät selbst war aber aus. Sprich das BMS hat die B- und die P- Verbindung getrennt.
Habe dann alle Kabel vom BMS wieder abgesteckt und so ein paar Stunden stehen lassen mit der Hoffnung dass er sich wieder erholt, keine Chance, das BMS ist tot, kein Lebenszeichen mehr.
Irgendwelche Ideen was ich machen könnte?

Habe gestern noch das hier gefunden:

Connection to BMS normal you dont neet the ADUM1201, but varius models of the BMS have not enugh power to pull down the rx pin from the esp, in this case you need a amplifier like the ADUM1201 to pull down ne voltage that the communication works. Quelle: DALY-BMS-to-MQTT

Also ist es wohl tatsächlich so dass mein BMS dafür zu schwach ist/war...


   
AntwortZitat
(@telly81)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 38
 

Hallo,

ich habe ein Daly 16s mit 150 A.
Ich Versuchte schon seit Stunden Daten vom BMS über den ESP mit ESPHome zum IOBroker zu übermitteln.
Verbindung klappt aber es kommen keine Daten an. Ist die Vorlage nur für 4s oder sollte sie auch bei mir laufen?
Noch jemand eine Idee was ich noch testen konnte?

Gruß Olli

Victron Multiplus 2 5000
Venus Os
16 x EVE 230 Ah
9,6 kWP Heckert Solar und Fronius Symo 7.0


   
AntwortZitat
(@jarek)
Batterielecker
Beigetreten: Vor 2 Jahren
Beiträge: 291
 

Ja... und kommst du auf die Page vom ESP drauf und siehst die Debugs oder das auch nicht?
... und hast die Daten vom MQTT eingetragen?


   
AntwortZitat
(@telly81)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 38
 

Hier ein Paar Bilder...

zum Ersten das ESPHome script von der ESPSeite und das Log Script.
Was mich wundert, Wenn ich die IP Eintrage, legt er in den Objekten auch die Variablen an, nur leider kommen da keie Daten...

Müssen noch irgendwo andere Einstellungen gemacht werden?

Gibt es eine Möglichkeit die Daten irgendwo im ESP zu sehen?

Danke schon mal.
Olli

Victron Multiplus 2 5000
Venus Os
16 x EVE 230 Ah
9,6 kWP Heckert Solar und Fronius Symo 7.0


   
AntwortZitat
Seite 4 / 7
Teilen: