JKBMS auslesen über BLE (Bluetooth) oder RS485 Adapter mittels EPS, ioBroker

Der Wert "Battery_Power" unterscheidet nicht nach laden oder entladen, richtig? Gibt es eine Möglichkeit anhand der Werte aus dem BMS_Watchdog zu erkennen, ob das der Lade- oder Entladestrom ist?

Würde das gerne in Grafana visualisieren aber finde keine Möglichkeit, dies zu unterscheiden.

@mythen Wenn du über eine Abfrage prüfst ob ob der Charge Current 0 ist, weist du das es sich um eine Entladung handelt und dann einfach den Battery Power Wert invertieren. Zumindest würde das dein Problem einfach lösen.

1 „Gefällt mir“

Hallo

danke für die Hife bisher, super.

Habe nun die Verbindung geschafft aber nicht alle werte kommen rüber

Aktuell habe ich ein Testpack mit 4s Li-ion. Die LifePO4 sind noch unterwegs:-(

Eventuell liegt as an der angesprochenen Firmware.

Die App zeigt mir in About an:

hardware: V11XW
software V11.25h
App V4.9.9
JK_B2A8S20P";

- Bluetooth  client cennected
Cell Voltages = 4.241V, 4.238V, 4.238V, 4.240V, 0.000V, 0.000V, 0.000V, 0.000V, 0.000V, 0.000V, 0.000V, 0.000V, 0.000V, 0.000V, 0.000V, 0.000V
unbekant 1 = 0, 0, 0, 0,
Average Cell Voltage = 0.000V,
Delta Cell Voltage = 0.000V,
Current Balancer = 0.000V,
unbekant 2 = 0, 0, 0, 0, 0, 0,
Battery Voltage = 0.000V,
CAN_Battery Voltage = 0V,
Battery Power = 0.000W,
Charge Current = 0.000A,
Analyse = 0, 0, 0, 0, 0, 0, 0, 0
unbekant 3 = 0, 0, 0, 0, 0, 0,
Battery T1 = 0.000°C,
Battery T2 = 0.000°C,
MOS Temp = 0.000°C,
Balance_Curr = 0.000A,
unbekant 4 = 0, 0,
Percent Remain = 0%,
Capacity Remain = 17104.896,
Nominal Capacity = 0.000,
Cycle Count = 127,
unbekant 5 = 0, 0, 0, 0, 0, 0,
Capacity Cycle = 0.000,
Tage: 150 Stunden: 4 Minuten: 32 Sekunden: 1
unbekant 5 = 0,
Charge on? = off,
Discharge on? = off,
unbekant 7 = 8, 0, 0, 0, 0, 63, 7A, 13, 0, 0,

@riker1
Ja, ich habe auch die Firmware V11.25. Die sendet wohl die Zellenspannung von 32 (?) Zellen.
Teste mal die Version von hier: JKBMS auslesen über BLE (Bluetooth) oder RS485 Adapter mittels EPS, ioBroker - #447 von mascheihei - Open Source - Software Projekte - Akkudoktor Forum
Die sollte funktionieren.

Perfect , die funzt.

Allerdings bin ich bei der Versionierung noch verwirrt . die V1.1 geht nun, die V3.4

Sind das andere Branches?

Danke Schönen Abend Prost VG T

Moin moin,

ich hab das hier grob mal alles überflogen.

Ich kann also mittels ESP/NodeMCU den JKBMS auslesen und mir die daten aufbereiten in HA, Grafana, whatever.

Was ich noch nicht verstanden oder überlesen habe:

(Wie) Bekomme ich die Daten des JKBMS an einen Solis RHI 4.6 übergeben bzw bekomme ich damit eine Kommunikation zwischen BMS und WR hin?

@mascheihei

Vielen Dank für das zur Verfügung stellen der Software (allen anderen beteiligten auch besten Dank).

Ich betreibe 5 16s packs, die ich über den Treiber von Louis per RS485 in der VRM-Konsole habe. Das funktioniert mit Einschränkungen. Die Namen der Packs sind nicht rebootfest, wenn ich ein Pack vom System trenne bleibt der Status in der Konsole "Online" (die letzten Werte frieren ein).

Das Endziel ist eine Batterie auf Basis der Daten von den Packs im Venus-OS zu haben und dementsprechend die Ladung und Entladung zu steuern.

Die Bereitstellung der zusammengefassten Batterie mache ich mit Hilfe der Software von Dr-Gigavolt/dbus-aggregate-batteries: Virtual service to merge multiple serial batteries (github.com)

Um die jetzigen Probleme zu beseitigen würde ich gerne die Software von Dir einsetzen. Zum grundsätzlichen Vorgehen habe ich ein paar Fragen.

  1. Die .ino Dateien spiele ich auf die 5 ESP's auf, und konfiguriere die Settings entsprechend der Packs? Jeder ESP sollte dann eine Json zur Verfügung stellen.

  2. Im Venus-OS installiere ich deine Software via Github?

  3. Kann ich in der config.ini 5 Hostadressen angeben?

  4. Wenn 3. "Ja" habe ich dann in der VRM-Konsole wie beim Treiber von Louis 5 Batterien?

Vielen Dank!

Guten Morgen! auch von meiner Seite mal herzlichen Dank für das Engagement, dass vom Programmierer hier an den Tag gelegt wird. Daumen hoch.

eine Frage/Bitte hätte ich noch. ich würde gerne via ON/OFF button aus vis/iobroker heraus das BMS steuern. es geht mir vor allem um die Punkte Charge/Discharge. vielleicht geht das ja bereits und ich hab´s überlesen, oder es ist aber auch gar nicht vorgesehen so etwas zu realisieren?

kurzes feedback wäre super

danke tom

Hallo zusammen,

ich bekomme folgende Fehlermeldung:

BLE_client:3:10: fatal error: PubSubClient.h: No such file or directory
#include <PubSubClient.h>
^~~~~~~~~~~~~~~~
compilation terminated.
Mehrere Bibliotheken wurden für "WiFi.h" gefunden
Benutzt: C:\Users\tamabi\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.1\libraries\WiFi
Nicht benutzt: C:\Program Files (x86)\Arduino\libraries\WiFi
exit status 1
PubSubClient.h: No such file or directory

Was mache ich falsch?

Vielen Dank

Gruß Matthias

@samabi
Schau mal unter Werkzeuge - Biblotheken verwalten nach PubSubClient von Nick O'Leary. Damit ging es bei mir.

Hallo Zusammen,

tolles Projekt und funktioniert bei mir einwandfrei. Danke !

Guten Morgen, kann es sein, das der Werte Balance current manchmal eine 10er Potenz zu hoch ist? Im Code

ist dazu

if((receivedBytes_main[139+2*offset] & 0xF0) == 0x0) {
Balance_Curr = (((int)receivedBytes_main[139+2*offset] << 8 | receivedBytes_main[138+2*offset])*0.001);
}
else if ((receivedBytes_main[139+2*offset] & 0xF0) == 0xF0) {
Balance_Curr = ((((int)receivedBytes_main[139+2*offset] & 0x0F) << 8 | receivedBytes_main[138+2*offset])*-0.001);
}

aber das übersteigt meine Fähigkeiten als Laie

Habe manchmal 3 A als Balance Strom. ?

Kann mir hier jemand verraten wie ich die Leistungsdaten von einem Sofarsolar HYD15 in einen TA UVR610ModB einlesen kann?

Hallo Jungs und Mädls ?

Leider versuche ich es seit Stunden die Software für einen ESP8266 zu Kompilieren und zu flashen und scheitere jedesmal.

Hat jemand zufällig ein fertiges Image schon geschrieben oder kann mir wer sagen wie ich die Dateien zusammenfügen muss.

Sorry für die Anfänger fragen.

LG Gerald

@suicide392 Du weisst, das der ESP8266 kein Bluetooth hat? Bei der BLE Version ist der also raus. Er kann höchstens für die kabelgebundene Variante genutzt werden. Was für Fehler gibt die Arduino IDE den raus?

@mr-moose

jop das weiß ich das ich es über RX u. TX auslesen muss. Und auch nicht alle Daten von Bms rausbekomme aber ich habe momentan leider nur einen ESP8266 hier rumliegen.

Also als absoluter Arduino Neuling bin ich so vorgegangen.

Ich habe mir die Version 0=6605-BLE_client_V3.4.rar und die 11686=2649-RS485_JKBMS_Working.ino_.rar die von Post 1 herruntergeladen und hab Sie entpackt.

Dann habe ich die eine Datein von RS485 in den Ortner von Ble Client reinkopiert, da ich ja irgendwo meine Wlan usw. Settings reinschreiben muss. ---> Keine Ahnung ob richtig oder falsche.

Zusätzlich hab ich mir die Boarverwaltung von ESP8266 (

http://arduino.esp8266.com/stable/package_esp8266com_index.json

) in Arduino installiert.

Und beim raufspielen auf den Esp8266 bekomme ich jedens mal diesen Fehler. -->

c:\Users\geral\Documents\Arduino\libraries\ESP32_BLE_Arduino\src/BLEDevice.h:10:10: fatal error: sdkconfig.h: No such file or directory
10 | #include "sdkconfig.h"
| ^~~~~~~~~~~~~
compilation terminated.
exit status 1
Compilation error: exit status 1

LG Gerald

@suicide392
Das wird so nicht klappen. Die BLE Version ist ja für den ESP32 und braucht seine Bibliotheken. Siehst du ja auch an dem "ESP32_BLE_Arduino" in der Fehlermeldung.
Die RS485 Version gibt die Werte nur auf der seriellen Console aus. Die Entwicklung scheint bei der Version bei einem frühen Stand stehen geblieben zu sein.
Ich denke einen ESP32 zu besorgen wird einfacher sein, wie das alles auf den ESP8266 anzupassen.

@mr-moose

Ok danke,

ich habe mir schon einen ESP32 von China besorgt .... dauert halt bis der kommt.

In der zwischen Zeit werde ich es versuchen dann diese Version GitHub - syssi/esphome-jk-bms: ESPHome component to monitor and control a Jikong Battery Management System (JK-BMS) via UART-TTL or BLE auf dem ESP 8266 zu installieren.

Muss man bei dieser Version zwingend ein Home Assistant und esphome installiert haben oder funktioniert diese Version über IObroker und MQTT?

Super wäre es natürlich wenn es über Iobroker funktioniert da ich schon so ein System am laufen habe.

LG Gerald

@suicide392 Du hast Echt in China bestellt?

Hm, bei Amazon gibts gerade 5 für 36 Euro. Einer für 11 Euro.

War Dir die paar Cent Wert von dort zu bestellen?

Mit denen von AZDelivery hat es auf anhieb funktioniert.

@Mr. Moose, danke für den Tip.

Jetzt kommt die nächste Fehlermeldung :wink:

In file included from C:\Users\tamabi\Downloads\7467=6664-BLE_client_V3.6\BLE_client\BLE_client.ino:8:
C:\Program Files (x86)\Arduino\libraries\Mouse\src/Mouse.h:25:10: fatal error: HID.h: No such file or directory
#include "HID.h"
^~~~~~~
compilation terminated.
exit status 1
Fehler beim Kompilieren für das Board ESP32 Dev Module.

Kann mir bitte jemand weiterhelfen?

Was mache ich falsch?

Vielen Dank

Gruß samabi