Renogy BT2 und Bluetooth Akkus einbinden

Hi,
ich habe es geschafft Laderegler mit BT2 und 2 Bluetooth Akkus erfolgreich einzubinden, hat jemand Interesse daran?

Grüsse Marcel

3 Likes

Das wäre für mich sehr interessant.
Ich muss allerdings noch auf meine Pro-Hardware warten.
Sobald ich dann die ersten Gehversuche hinter mir habe, bin ich gerne dabei

Servus, ich habe auf jeden Fall Interesse.
Wie hast du das gemacht, ich hatte noch keine Zeit mich damit zu beschäftigen.
Habe den 50A DC-DC Mppt mit dem BT2 und 3 x200A Pro Batterien die ich einbinden möchte.

Hallo , Bluetooth Akku von Renogy? würde mich auch auch Interessieren, wenn es geht.

hi
hier wären meine flow datei schon mal, ich habs über mqtt gemacht, kenn mich auch nicht wirklich damit aus :wink:
wichtig wäre die bluetooth id der geräte rauszufinden
und es klappt nicht sooo gut wie in der originalen app
flows (1).json (16,3 KB)
leider kann ich den ordner nicht hochladen welchen man noch braucht
hier vom github die originalen dateien

so siehts bei mir dann aus

renogy.rar

im pekaway verzeichnis
es muss die ip angepasst werden, die bluetooth ud und die nummer welches renogy gerät

Cool, danke dir. Probiere ich die Tage aus.
Den Cyril Ansatz wollte ich auch ausprobieren :sweat_smile:

Servus,

ich habe endlich Zeit gefunden.
Ich habe es geschafft mich mit dem DC-DC Mppt Regler zu verbinden und die Werte auszulesen, das hat sofort geklappt.
Aber die Renogy Pro Batterien bekomme ich egal was ich versucht habe nicht hin.

(venv) pi@pekaway:~/pekaway/renogy-bt $ python3 example.py config.ini

INFO:root:Init BatteryClient: RNGRBP1253000252 => 4C:E1:74:4A:7A:CB

INFO:root:Starting discovery…

INFO:root:Devices found: 10

INFO:root:Found matching device RNGRBP1253000252 => 4C:E1:74:4A:7A:CB

INFO:root:Client connection: True

INFO:root:subscribed to notification 0000fff1-0000-1000-8000-00805f9b34fb

ERROR:root:Error connecting to device

ERROR:root:Connection failed: (<class ‘bleak.exc.BleakDBusError’>, BleakDBusError(‘org.bluez.Error.NotSupported’, ‘Operation is not supported’), <traceback object at 0x7fa04525c0>)

ERROR:root:on_error: (<class ‘bleak.exc.BleakDBusError’>, BleakDBusError(‘org.bluez.Error.NotSupported’, ‘Operation is not supported’), <traceback object at 0x7fa04525c0>)

INFO:root:writing to 0000ffd1-0000-1000-8000-00805f9b34fb [255, 3, 19, 136, 0, 17, 20, 182]

INFO:root:characteristic_write_value failed invalid literal for int() with base 16: ‘0000None00001000800000805f9b34fb’

INFO:root:Exit: Disconnecting device: RNGRBP1253000252 4C:E1:74:4A:7A:CB

Ich habe alles ausprobiert (auch mit ChatGPT).
Anderen Bluetooth Dongle angeschlossen, alle Bluetooth Geräte aus der nähe ausgeschaltet. Selbst den BT2 adapter abgesteckt.
Habe aktuell eine RPI5 drin, die habe ich dann gegen eine RPI4 mit frische SD-Karte getauscht.
Mir gehen langsam die Ideen aus.

Hattest du auch Probleme damit?

hab die ältere Version da läufts.

vielleicht hilft dir das Connection to battery RBT12200LFP-BT fails. · Issue #108 · cyrils/renogy-bt · GitHub

Die beiden Batterien:

  1. RNGRBP1253000252
    → Das ist die Renogy Smart Lithium Iron Phosphate (LiFePO4) 12V 300Ah Pro Serie, mit Bluetooth.
  2. RBT100LFP12-BT
    → Das ist die ältere Renogy 12V 100Ah LiFePO4 Smart Battery mit Bluetooth, auch oft nur als „BT“ bezeichnet.

wenn ich die Version direkt von Github ziehe läuft es bei mir mit der “neuen” Batterie auch perfekt.

Habe den Flow etwas angepasst, sodass einfach die “normalen” globalen Variablen für das BMS befüllt werden und keine neuen Displays angelegt werden.

Aktuell werden alle 5 Minuten neue Daten gezogen, was sehr zuverlässig funktioniert.

Hier mein Flow, falls jemand eine Inspiration sucht:
(Ist nun natürlich nur für eine Batterie angelegt und müsste entsprechend erweitert / angepasst werden für weitere)

[{"id":"28993de10916aaae","type":"tab","label":"Renogy","disabled":false,"info":"","env":[]},{"id":"78b242d3fcd9471a","type":"mqtt in","z":"28993de10916aaae","name":"","topic":"solar/bat1","qos":"2","datatype":"auto-detect","broker":"0ddb07c65cbb68bc","nl":false,"rap":true,"rh":0,"inputs":0,"x":80,"y":200,"wires":[["fe22ff40224f18e7","5b115bfb4580a1af"]]},{"id":"457d11b1e320ad58","type":"exec","z":"28993de10916aaae","command":"python3 pekaway/renogy/example.py config.ini","addpay":"","append":"","useSpawn":"false","timer":"","winHide":false,"oldrc":false,"name":"Werte 1. Batterie","x":450,"y":280,"wires":[["0406e00b034840a5"],[],[]]},{"id":"b2f783bf6558ba03","type":"ui_button","z":"28993de10916aaae","name":"","group":"e60b8bd1.9669b8","order":19,"width":6,"height":1,"passthru":true,"label":"Auslesen","tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"true","payloadType":"bool","topic":"payload","topicType":"msg","x":240,"y":280,"wires":[["457d11b1e320ad58"]]},{"id":"807b3c019d0a26ca","type":"inject","z":"28993de10916aaae","name":"","props":[{"p":"payload"}],"repeat":"300","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"true","payloadType":"bool","x":90,"y":280,"wires":[["b2f783bf6558ba03"]]},{"id":"0406e00b034840a5","type":"exec","z":"28993de10916aaae","command":"date \"+%H:%M:%S\"","addpay":false,"append":"","useSpawn":"false","timer":"","winHide":false,"oldrc":false,"name":"","x":680,"y":280,"wires":[["aed6220c0b4c565c"],[],[]]},{"id":"aed6220c0b4c565c","type":"ui_text","z":"28993de10916aaae","group":"e60b8bd1.9669b8","order":18,"width":6,"height":1,"name":"aktualisiert","label":"Aktualisiert um:","format":"{{msg.payload}}","layout":"row-center","className":"","style":false,"font":"","fontSize":"","color":"#000000","x":910,"y":280,"wires":[]},{"id":"fe22ff40224f18e7","type":"function","z":"28993de10916aaae","name":"set global cell values","func":"global.set(\"BMScell1\",msg.payload.cell_voltage_0*1000);\nglobal.set(\"BMScell2\",msg.payload.cell_voltage_1*1000);\nglobal.set(\"BMScell3\",msg.payload.cell_voltage_2*1000);\nglobal.set(\"BMScell4\",msg.payload.cell_voltage_3*1000);","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":360,"y":100,"wires":[[]]},{"id":"5b115bfb4580a1af","type":"function","z":"28993de10916aaae","name":"set global BMS values","func":"//battery\nglobal.set(\"BMSamps\",(msg.payload.current));\nglobal.set(\"BMSvolt\",msg.payload.voltage)\nglobal.set(\"BMStemp\",(msg.payload.temperature_0));\nvar soc = (msg.payload.remaining_charge/msg.payload.capacity)*100;\nglobal.set(\"BMSsoc\",soc.toFixed(2));\nglobal.set(\"BMScap\",msg.payload.capacity);\n\nvar power = (msg.payload.current/1000) * msg.payload.voltage;\npower = power/10;\npower = power.toFixed(1);\nglobal.set(\"BMSpower\",power)\n\n//global.set(\"BATTvolt\",msg.payload.battvolt/100);\n//global.set(\"BATTamps\",(msg.payload.amps/100));\n\n\n//battery\n//global.set(\"BMSmaxcap\", msg.payload.NominalAh);\n\nvar BMSmaxvolt = global.get(\"BMSvolt\")\nvar BMSminvolt = global.get(\"BMSvolt\")\n//var BMSmaxcap = global.get(\"BMSmaxcap\")\n\nif (global.get(\"BMSmaxvolt\") == \"wait\" || global.get(\"BMSmaxvolthighest\") == \"wait\" || BMSmaxvolt > global.get(\"BMSmaxvolthighest\")) {\n    global.set(\"BMSmaxvolthighest\", BMSmaxvolt)\n    global.set(\"BMSmaxvolt\", BMSmaxvolt.toString())\n}\nif (global.get(\"BMSminvolt\") == \"wait\" || global.get(\"BMSminvoltlowest\") == \"wait\" || BMSminvolt < global.get(\"BMSminvoltlowest\")) {\n    global.set(\"BMSminvoltlowest\", BMSminvolt)\n    global.set(\"BMSminvolt\", BMSminvolt.toString())\n}\n//if (global.get(\"BMSmaxcap\") == \"wait\" || global.get(\"BMSmaxcaphighest\") == \"wait\" || BMSmaxcap > global.get(\"BMSmaxcaphighest\")) {\n//    global.set(\"BMSmaxcaphighest\", BMSmaxcap)\n//    global.set(\"BMSmaxcap\", BMSmaxcap.toString())\n//}","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":360,"y":160,"wires":[[]]},{"id":"0ddb07c65cbb68bc","type":"mqtt-broker","name":"","broker":"http://localhost","port":"1883","clientid":"","autoConnect":true,"usetls":false,"protocolVersion":"4","keepalive":"60","cleansession":true,"autoUnsubscribe":true,"birthTopic":"","birthQos":"0","birthPayload":"","birthMsg":{},"closeTopic":"","closeQos":"0","closePayload":"","closeMsg":{},"willTopic":"","willQos":"0","willPayload":"","willMsg":{},"userProps":"","sessionExpiry":""},{"id":"e60b8bd1.9669b8","type":"ui_group","name":"BMS INFO","tab":"deee53a800de461d","order":9,"disp":true,"width":"6","collapse":true,"className":""},{"id":"deee53a800de461d","type":"ui_tab","name":"Info","icon":"mi-info","order":1,"disabled":false,"hidden":false}]