I have a 3-phase system with a 48V battery bank using 123Electrics USB attached 123SmartBMS and the Venus/Cerbo GX driver for it. I also have Node-RED running a number of things, where one is monitoring the BMS communication by reading the BMS temperature through a Victron node. If it fails that flow sends an email to me, the same when the communication comes back on. The reason for this is that I have experienced loose wires due to a not-to-good connector on the BMS.
This setup has been working flawlessly for almost two years and I have constantly been upgrading the Cerbo GX to the latest beta OS version, usualy without any problems.
However as of v3.50~28 and later this connection is going yo-yo, failing every 20 seconds or so, meaning it suddenly fails and then ~5 seconds later comes back on line. Reverting to OS v3.50~25 solves the problem.
Anyone have an idea why this is happening?
[2024-11-05]: Updated to 3.51~3 but having the same issue despite tweeking some timers. However, the failure is now a bit less frequent, every 1-2 minutes, and more irregulare with up to ~90 minutes between them.
Have you contacted 123BMS to see if they have any plans to update their driver for Venus OS V3.50. I do not know the exact cause of this but the changelog for V3.50 had lots of changes “under the hood”, i.e. to the inner workings. This is why if you run 3rd party offerings caution is required updating. It is the responsibility of the 3rd party provider to update their software.
@fwfarnell I’m fully aware of being cautious when using 3’rd party software and upgrading and if this issue goes back to the driver being the problem I will certainly notify 123Electric about it. Also, having updated frequently I’ve seen that one issue with one release has most of the times been fixed in the next or the one after that, but this issue persists in 3.50~28 betas, 3.51~3 beta and in the offical 3.50 release.
So what I’ve done to exclude either the Venus OS (large) or the 123SmartBMS driver I reconfigured my node-RED flow to read the battery temperature from the Lynx shunt instead to see if the issue went away or not, and to my surprise it persisted. So currently I don’t think the 123 driver is the issue here but something with the Venus OS (large) and maybe Node-RED and/or the victron node package.
The nodes I’m using are the input node “@victronenergy/node-red-contrib-victron : victron-input-battery” connected to a trigger node, which is set up to send true or false and to be re-triggable within 23 seconds. The input node is expected to send a message every 5 seconds. If it fails to read no message is sent and the trigger node change state and sends a true (for failed comm) to som some logic that sends an email to me.
If there is anyway to debug this, please let me know how and I’ll give it a shot.
Cheers,
/JR
Sorry if I was stating what you already know, it is the first thing to state as we get a lot of problems raised due to upgrading.
Your test with the Lynx was a good idea. I wonder if something in the system has slowed down. One test may be to increase the time required before getting an alert, or counting that it has to fault continuously for a period, once it first faults record the time and keep monitoring.
As a last resort you can reset Node Red to default with the V3.50 OS. Export your flows, reset Node Red to default and import the flows back in. This is probably easier than rewriting the flows from scratch after a reset.
No worries, I understand that you have to do that, been there, done that, got the T-shirt Anyway, I choose to reset Node-RED and import the flows again, so lets see what happends. Note on that: remember to list what node packages you have installed so you can re-install them after a reset and before importing your flows.
Cheers,
/JR
[17:27 CET]: I dare say that the issue is solved now after doing the factory reset of Node-RED. I noticed (on the command line) that when adding the node packages the node-gyp was running for at least some of the packages and that means it was compiling them. WIth all the new stuff “under the hood” I’m not surprised that the old packages failed with random behaviour as you probably have updated both the Linux kernel version and libraries to newer version, hence the mismatch with the older packages compiled (and linked) to older os/libs.
So leassons learned: For every new major and minor version, export your flows, list your packages, factory reset Node-RED, add the packages again (wait until they’ve been installed properly) and them import your flows again.