I developed a Node-RED plugin that facilitates the reading of all Instant Readouts via Bluetooth, drawing inspiration from the Victron-ble Python library. This plugin is particularly useful for integrating devices like the Battery Protect, which does not have a VE.Direct port, enabling broader compatibility within the platform.
For detailed documentation, installation instructions, and usage examples, please visit the following link:
I encourage you to share your thoughts, provide feedback, report any bugs, or suggest new features in the designated channel or on the GitHub project page. Your input is invaluable in helping improve this plugin and enhancing user experience.
Just installed the node (1.2.0) on a Ekrano GX. It is running V3.60, I entered ID and Decryption Key (copied over from the VictronConnect App to avoid any misspelling) for a Smart Battery, a BMV and a SmartSolar MPPT Charger and hooked the output to a debug node, but get nothing in Debug:
Do you have an GX, ekrano, …?
Are you able to login to your device via SSH?
If yes, can you please start “bluetoothctl” and if you don’t see a lot of messages just write “scan on”, you can leave it with “exit” and sent me a screenshot.
Like I wrote in the README to be able to run it in node-red I need to parse the bluetoothctl output and this “screenscraping” is always not a perfect solution.
As you can see from the Screenshot, the Cell Voltages Array seem to be wrong. When I check them with VictronConnect they are at about 3.32V each.
Perhaps you could have a look into this?
It would be awesome to finally have the individual cell voltages available in VenusOs/NodeRed, something that was not possible with the “old” (non NG) SmartLithium Batteries from Victron which is, to be honest, quite poor. But hey, with your great BLE Node and them giving us NodeRed it seems finally possible!
Let me know if you need anything for debuging, and I am keen to test a new revision when available!
Could you please remind me of what you entered in the address line manually? I just wanted to check if there’s an opportunity for me to enhance it by eliminating spaces, converting everything to lowercase, or implementing other minor improvements to make it more resilient.
I believe I’ve identified the issue and implemented a fix. It typically takes some time before you can install the new version locally. Here’s the link for your reference:
Since I don’t have this particular device, I can’t test the changes myself. I would greatly appreciate it if you could share your feedback with me. Thank you!
Besides that, can you maybe give my github and node-red flow a star, THX
I will check when the battery is charged up further to 3.55V as per now it is “in the flat part of the LiFePo Charging curve” and all the cells show the same value (3.32V). If I find any difference to what VictronConnect is showing, I will report back here.
When I tried the node yesterday, clicking on the magnifying glass revealed no found BLE Devices. (Perhaps I was to impatient and should have waited longer after the installation and restart of node-red?) Anyway i entered via Copy & Paste into the “Device”-Filed directly from VictronConnect which was a string in this form: “dead7cf3beef” missing all the colons normally seen on hex mac-adresses. But now it shows up fine all the BLE-devices close to the Ekrano, so basicaly no need anymore to enter the mac address manually.
Once again: Huge thanks for this fine node and the support! This node has opened up new possibilities. I think I might say, that your contribution is genuinely appreciated by me and the community. Keep up the awesome work! Of course i “star-ed” you on Github and Node-Red!
If you are using the internal bluetooth of a cerbo, please make sure yours is not part of the serial number range where the internal adapter is not supposed to be used, as it is unreliable due to internal temps.
This and the affected range are documented in the manual.
While playing a bit more with the BLE Node and comparing the Data I get from VictronConnect I noticed, that in VictronConnect on the SmartLithium Batteries they show the time since the battery was last fully charged:
Is it possible to have this information (it might also be just a Unix-Timestamp when last charged or a number like “minutes since last charged”) also available through your BLE-Node?
It’s not really important but would be nice to have if implementation is not too complicated.
Hi Nick,
I have read about that problem with the GX multiple times. I have an ekrano and use it via internal Bluetooth. It should work, but I can not test it. If you or someone else could test it with external Bluetooth, that would be great.
Then you’re sorted. I just wanted to add a note so the many users with older devices are aware.
We still get people posting topics about this issue despite it being in the manual for years.
@satmaster2000
RE Mac address. Thanks for the info. I just added for the next version that the placeholder show the format: “Device Address (XX:XX:XX:XX:XX:XX)” to make it more clear.
RE: letze “Volladung”. I assume this information is not accessible via the Instant Readout, as shown in the picture:
. Therefore, it also cannot be used. Victron has only published instructions on how to parse and read the values for that Instant Readout feature. All information available in the details and detailed readings is not accessible to the public.
I have one of the older Cerbos and I am using an external Bluetooth dongle for this reason. Also because much of the equipment on my boat is the other side of at least one 6mm steel bulkhead to my Cerbo.
I have been able to pick up equipment and read it OK. I tested a Smart Battery Protect and a Lynx Smart BMS NG version. It also detected the other equipment when the magnifying glass icon was pressed.
Edited to clarify, because the equipment is the other side of the steel bulkhead the Bluetooth dongle is on an extension lead in the equipment space so will be connecting rather than the Cerbo.
@DirkW sorry I can not really work with your message.
If it still does not work, please sent a screenshot of the version of the node-red-contrib-victron-ble node in the palette manager and a screenshot of the payload,…