Some years ago, we bought a Autoterm 2D diesel heater with a waterproof box. This heater actually needs an external 12V power supply (or a 24V power supply, depending on the model you buy). Until now, we always connected this to one of our 12V leisure batteries. That meant we always had to carry a long 12V extension cable with us. Not any more …
Since we had such a good experience with our mobile shower via USB-C that originally also runs on 12V, I went looking for more devices with a 3A @ 12V power requirement. And according to the data sheet Autoterm 2D just is such a device. The manual states a power requirement from 10W (min 800W heating power and 34m3/h) to 29W (max, at 1800W and 75m3/h).
So, I got myself a Baseus 100W Power Bank 20Ah from Aliexpress that can deliver the required power. With this unit the diesel pump can be powered for approx 2.5h at full capacity and approx 7.5h at minimum capacity.
Actually, any power bank with USB-C PD that delivers 3A @ 12V could be used. And if you take a power bank with a higher capacity the heater will certainly run longer.
USB C PD Type C Male to 12V Car Cigarette Lighter Socket, taken from Aliexpress
In my opinion, the advantages of this approach are:
Flexibility: we can carry the power bank along with the heater and do not need to keep a 12V power source (leisure battery or else) nearby. An option to power a power bank is probably easier to find than a 12V source. Especially true for our trailer with a 24V battery.
Price; power bank is around 51CHF and the converter 5CHF (and the battery 1700CHF) . Compared to the other heater we have, the Profidurium Mobile-Heater 2kW, this is much cheaper. The additional battery with charger costs an additional hefty 970CHF (on top of the 2300CHF for their heater).
Weight: 400g for a power bank is a neglectable additional weight compared to a full blown battery.
The other day, I connected my BYD Battery-Box Premium LVS 8.0 to a Victron MultiPlus-II 48/3000/35-32. Here are the steps I took to do it and some errors I ran into.
The Battery-Box needs to communicate via CAN with the inverter. And as Victron inverters do not come with a CAN port by default (unless you go for a MultiPlus-II GX or EasySolar-II GX) we need a GX device. Originally, I wanted to use my Victron Cerbo GX for that, but since we moved into the caravan the device is gone missing. Luckily last year, I supplied myself with a couple of Raspberry Pis (at least model 3and 4 are supported) that could run a Venus OS and act as a GX device. And as I was not the first one doing that, I thought it would be just too easy – well, it was easy after I did everything right.
Normally, Victron requests to use a VE.Can to CAN-bus BMS Type A cable to connect to a BYD battery. This is actually an ordinary CAT 5e network cable with RJ45 connectors where only the relevant CAN pins (and GND) are connected.
In order to screw the wires to the CAN hat terminal, I used uninsulated ferrules. Otherwise the Cat 5e wires would have been too soft and light for the terminal.
Installing Venus OS on the Raspberry PI 4
For the Raspberry PI 4, I followed the documentation and installed the standard (and not the large) image. At that time, v2.93 was the newest version (see here for directory of all versions). I uncompressed it and used Win32DiskImager to write the OS to a MicroSD card (all done on a Microsoft Surface Go2 running Windows 11).
Note1: at first, I did the install with a Raspberry Pi 3 Model B V1.2 which also worked fine. However, the CAN device on the Victron UI then did not show any packets but worked without problem.
Note2: The Raspberry Pi 4 is a model B Rev. 1.5 (I mention this, as I saw comments that indicated that there might be a difference between different revision from 1.2 onwards).
Note3: I activated the “Mobile” tile to be able to change the charge current via the overview screen.
The CAN driver then had to be installed separately. As I did not have direct internet access from the Pi, I used the offline install method with a USB memory stick.
As written in the documentation, I copied the compressed installation files as venus-data.tar.gz to the root of the USB drive and restarted the Pi. To verify the automatic installation was successful check if there is a new menu item Package manager at the end of the Settings list. If not visible check if you can find SetupHelper in /data. You can always manually copy it from the SDCard (use mount to see where the card is mounted) and then run setup yourself. I did a reboot after every package.
New menu item in Settings after installation of SetupHelper
Same procedure here. Copying the compressed installation files to the SDCard as /venus-data.tar.gz. Then run the package installation manually if for whatever reason the automatic install does not succeed. See below what the package manager should look like after the installation of both packages.
List of active packages in Package manager
Installing the driver
Configuring the driver had to be done from the terminal. There was a minor issue for me which I did not get right the first time. When asked to install an interface via the i option I actually had to type in a hat. I named the device hat0 and after the reboot it showed up as hat0 (can8) can8 spi0.0. In my case it was the “Waveshare 1-channel CANbus Hat 12 MHz crystal” (check the imprint on the silver part on the hat to see the crystal speed).
Configuring CAN bus
There is really not much to configure. The only option under “Services” is to set the communication speed which is 500kB/s for BYD. If the CAN adapter does not show up make sure the correct type has been selected in VeCanSetup. For me it just worked out of the box.
CAN hat showing up in ServicesSetting the CAN speed for BYD Battery-Box BMUConfigured CAN bus
Before the BMS is connected the CAN should show up as ERROR-PASSIVE. As soon as the communcîcation worked it changed to ERROR-ACTIVE.
CAN bus ERROR-ACTIVE with actual traffic
Note: When I tried with the v2.93 on the Raspberry Pi 3 the RX/TX counters were always empty (but nevertheless worked). Via ifconfig the packets were correctly shown. But with the Pi 4 traffic was shown on the UI right from the start.
CAN bus traffic via ifconfig
I did not connect the CAN cable at that point but configured the Battery-Box and the inverter first.
Commissioning the inverter
I used a USB MK3 adapter with an RJ45 Cat 5e cable connected to the VE.Bus of the inverter to configure the MultiPlus.
I used VEConfigure 3 and VictronConnect (to be able to configure via VictronConnect I had to use the zzz password to get out of the read-only mode).
First, I updated the firmware of the MultiPlus via VictronConnect and then continued with VeConfig.
Basically, I set the inverter to off-grid and did not enter a country code. For the battery type I selected “Lithium Iron Phosphate” and accepted the default settings. I set the “AC current limit” to a maximum of 20A (the maximum my generator could handle) and activated the option to have it overruled by “Remote” (which can also be done via the GX Remote Console or VictronConnect).
Setting AC current limit via GX remote console
I also activated DVCC to later have the BMS tell the inverter when to charge and how to discharge. This was pretty much it. So I connected the MultiPlus via the VE.Bus and the MK3 cable to the Raspberry where it showed up instantly.
Inverter shows up after connecting VE.Bus to the Raspberry via MK3
Commissioning the Battery-Box
After assembling the battery which conisted of only stacking both battery modules on top of each other followed by the PDU on the very top I connected the BMU via the grey RJ45 to the PDU. After turning on the top most battery the BMU started as well and I was able to connecto to the WiFi of the BMU from the BeConnect app (Android or Windows both worked for me, the latter actually showed more information).
Via the app I pre-downloaded a current firmware and after switching to the BYD access point I applied the firmware (actually two different firmwares). After some waiting the new firmware had been applied and I could configure the basic settings: inverter manufacturer, number of battery modules.
At this stage I connected the 35mm2 cables from the battery to the inverter. I bought the cable preconfigured with the battery. And I used a Littelfuse JLLN-125X (class T) as a fuse between both devices.
Connecting the battery to the Venus OS
And then I connected the BMU to the GX. After some seconds, the inverter clicked and started charging. Essentially, DVCC turns on automatically (even if turned off before) as soon as the CAN communication is established.
In the GX overview the battery appeared and gave some additional information (see next section for details). All parameters between battery and inverter were exchanged automatically.
Things I noted
The battery turns itself off after a while when no communication via CAN is possible. This behaviour is described somewhere in the BYD manuals.
Charging the battery does not work when no CAN connection can be established. The inverter stays in “Absorption” mode with a current of 0A.
A more detailed description of the pin layout can be found on the BYD manuals. See images below.
The GND pin is not required for communication between the BMU and the VE.Can GX. Only BLUE for CAN-H and BLUE-WHITE for CAN-L are going into the CAN hat.
In addition to the official web site bydbatterybox.com the web site eft-systems.de provides additional information and downloadable documentation.
When charging the Battery-Box for the first time, I eventually reached a 100% SOC. Until that point the charge current stayed nearly constant at around 30A (Bulk). It decreased to around 1.2A and the inverter turned to “Absorption” but never stopped charging. At some point one of the cells reached a voltage of over 3.7V which resulted in a warning on the GX. Nevertheless, charging continued. I manually switched off the charger after the second time I received a warning due to high cell voltage. I would have expected to have the inverter automatically stop charging at a 100% SOC. Maybe the BMS only measures the charge voltage limit (CVL) which is defined as 58.4V and not the individual cells?
The cells in a battery were not really well balanced (delta >= 100mV). I would have expected a better balancing. Actually, I do not know if the BMS has a balancer at all. I could not find anything in the documentation.
Each LVS 4.0 has a capacity of 78Ah @ 51.2V = 3993.6Wh. The GX shows this information in the “Details” item within the battery. I could not find this information in the manual.
The BYD manuals state, that the lifetime of the battery can only be achieved at 0.2C, which limits a single LVS 4.0 to 798.72W (or 1597.44W for a LVS 8.0) – this is a ridiculous small amount.
Charge current was initially restricted to 38.4A by the battery, only after a day or so, the charge (CCL) and discharge current (DCL) went up to 128A. In my case the inverter only support 35A max, so no issue with that.
Startup sequence Start top-most battery first by pressing the power button for a couple of seconds; then start the BMU if not automatically started; next start the inverter; then start the GX (in my case currently on the AC side).
Shutdown sequence Turn off the inverter; turn off the BMU; turn off the individual batteries (keep buttons pressed for a couple of seconds); GX turns off automatically.
Adding a CAN hat in VeCanSetup needs to be entered literally as a hat.
Though I set the AC charge current to 20A the inverter only drew 16A at most.
The WiFi of the BMU cannot be changed, nor the password.
BYD RS485 CAN pin layout, taken from the BYD BMU maualBYD to Victron CAN pin layout, taken from the BYD BMU manualBYD Battery-Box voltage and charge limitsSpecification of BYD LVS 8.0, taken from the BYD manuals
Future improvements
I want to connect the Raspberry to the DC side with a 48V/12V step-down converter and a 12V to USB-C adapter. Inbetween I want to add a power bank, so the GX can be configured even if all power sources are down.
Replace the CAN hat with a USB CAN adapter
Strengthen the connection of the CAN wire to the CAN adapter
All in all, the installation was straightforward. A couple of uncertainties are probably normal when doing this the first time. I would have expected more documentation (articles, videos) for this to be around. But I could not find anything for a BYD, Victron, VenusOS via Raspberry setup. Maybe others are only using a Cerbo GX?
The batteries are well built (all IP55) but extremely bulky and pricey. With around 400 CHF per KW this is more than 300% of regular LiFePO4 cells. But nevermind, lead and delivery times are in the magnitude of months.
I would have liked the BMU to be integratable into one of the PDU boxes. Now it is just hanging around separately.
Would I buy another Battery-Box? Probably not – too pricey. But good for starters. Plug and play when used with Victron and a Cerbo GX.
We currently use the shower, Brunner Aquafresh 2.0, in our Caravan instead of the built-in shower with the boiler to reduce the risk of legionellae and to conserve power.
We heat the water with a 2000W immersion heater which takes around 25min to heat the water to 43°C from 15°C (see the post linked above for more details on time and power requirements). And make sure to stir the water after heating before use.
The water is kept in a DIN96 20l wide-neck container from Comet with a special dust 2-hole cap to fit the hose and the elecitricity cable into it. The pump itself has a standard 12V car/cigarette plug that connects to a USB-C trigger board that takes it power from a USB-C power bank with Power Distribution (PD) 2.0.
Everything is kept within a 30mm PIR tube and glued together with hot glue. This does not look to nice but it works. To further “water proof” the device I keep it in a plastic zip-lock bag with the opeining upside down. See below for an even easier option for this.
The on/off-switch on the shower itself is not waterproof – but until never got too much water to produce a short.
To actually get the hose and the electricity cable through the plastic cap of the container I cut away the switch (as it could not be opened) and connected a new one (from Steffen, bought at Landi for 1,50 CHF).
The power bank must be able to deliver 3A @ 12V (the pump has a nominal power consumption of 35W). Water pressure is ok, but not great. Two people can consecutively shower from a 20l container (without washing long hair, of course).
Video: Quick review of our 12V USB-C mobile shower
We also use it in our cars as a mobile shower. On the road we only have a 1000W immersion heater, so heating up the water takes twice as long. But in the summer the initial temperature is much higher so it slightly compensates the total time needed.
UPDATE: instead of going through the hassle to build a USB-C to 12V converter yourself, you can also buy this item from Aliexpress. It is a sealed USB-C to 12V converter. It is much smaller than the tube-based device and costs only around 5CHF, but has no fuse.
Note, that there is a version with and without converter. I went for the version with the converter and with a cable length of 300mm.
USB C PD Type C Male to 12V Car Cigarette Lighter Socket, image from aliexpress.com
Recently, when I converted most of my electrical sockets and connectors to Neutrik powerCON True1 TOP, I was looking for a Neutrik power distribution. After some failed tests to build a box myself from an junction box, I found a product called Mini Brick from an italian company called Valentini which was sold via Distribution Zone in the UK for a retail price of 145 GBP (174 GBP incl VAT).
The box is essentially a 6-way (and not 7-way as shown above) power distribution rated up to 3500W (nearly 16A @ 230V) and has a red status light to indicate if it has power.
Build quality is very good (metal or hard plastic case, rubber coated); and the price is also understandable, as the chassis connectors alone would cost around 60 GBP. However, I was not totally happy with it due to is relatively massive form factor: L80mm x W75mm x H300 mm plus connectors.
To cut the holes for the chassis connectors into the case, I used a Hilti 30mm hole saw with my Wabeco drill stand. Drilling the duplex chassis connector obviously needed 2 holes and a cutting away some excess plastic (later on I found out that a 25mm diameter is better suited for the smaller part of the duplex connector):
Opening for the Neutrik NAC3PX-TOP duplex chassis connector
Note: one might be even able to use 29mm and 24mm holes, see the detailed drawing – maybe I try this next time.
To mount the chassis connectors onto the box, I used M3 screws and hex nuts (I could not find TX versions) which I drill with a 3mm Hilti HSS-Cobalt drill (yes, overkill – but the only drill I had at hand). Unfortunately, the screws were a slightly too short, so it was a little bit of fiddling to get the hex nuts onto to the screws.
After all the Neutrik connectors were installed, I wired them to a 5-way Wago 221 COMPACT series splicing connector (221-415) with fully insulated blade receptable connectors (1.5mm2, 0.8mm, 6.35mm) to the socket and with 1.5mm2 ferrules to the clamp.
After assembly I did a final connectivity test to ensure all wires (L, N, PE) were correctly connected. As the duplex connector has a different wiring layout, it is easy to mix things up (PE is in the middle and not at the side).
5-way Neutrik powerCON True1 TOP distribution in a LeGrand Plexo junction box
The end result is not as sturdy as the Mini Brick, but much lighter and smaller. And if I ignore the amount of labour I put into the build, this box is certainly much cheaper.
Video: 5-way Neutrik powerCON True1 TOP distribution box made from LeGrand Plexo
And as usual: electrical installations can be dangerous – only have them performed by qualified personnel.