Tank monitoring with Victron GX Tank 140, accuracy matters
Harvey, as I (mostly) affectionately call my RV, like all other RVs, contains waste and gray water. If you’re a boater in the U.S., gray water containment is a largely foreign concept. Let me tell you, it’s also kind of a pain. On Harvey, until now, it’s been a pain. But, it turns out that’s because we were only using a small percentage of the advertised capacity of the gray water tank. Victron’s Venus OS, GX Tank 140, and an inexpensive tank transducer tell the real story of our tank usage.
Most U.S.-based boats contain only their black water. Black water is the water coming from the onboard toilets. All gray water from the boat (sinks, showers, etc) goes directly overboard. Other parts of the world, and a few inland, fresh-water lakes in the U.S., also require gray water containment for later pump-out.
The current setup
Harvey was originally equipped with field-effect sensors stuck to the outside of the fresh, gray, and black water tanks. The gray tank fills confoundingly quickly, at least according to the gauge. In fact, I noticed that the 60 gallon gray tank (according to the spec-sheet) would be full before the 77 gallon water tank was even down one-third of a tank. I’ve long suspected the gauges were wildly innaccurate.
The sensors are applied approximately one-third, two-thirds, and all the way up the tank. When the water reaches each of these heights, the corresponding light illuminates on the panel. This is a pretty approximate way to measure a tank. The sensors provide no indication if the water is just above a sensor or nearly to the next sensor. Plus, the accuracy of the system is dependent on the placement of the sensors. As you will read, it appears Holiday Rambler, the maker of my RV, wasn’t very careful when they placed my sensors.
The new setup
I’ve previously sung the praises of submersible pressure transducers as tank level gauges. So, especially in a gray or black water tank, a submersible transducer was my first thought. Fortunately, I can access the top of the tanks by removing a couple of drawers. Although I can see the top of the tanks, the rest of the tanks are a little difficult to see, so I’m not certain of their total height, but I estimated it’s between 1 and 2 meters. I ordered two 0-2 meter 4-20 milliamp transducers from Amazon for about $40. Lastly, I knew I wanted the ability to remove the sensors if needed. So, rather than drill the smallest possible hole in the tank, I installed a 4-inch, waterproof Beckson deck plate.
I then drilled a hole in the deck plate for a water-tight cable grommet and ran the transducer’s wire through the grommet. To remove the sensor, all I have to do is unscrew the deck plate. I debated using a pry-out deck plate so I didn’t have to twist the wire as I removed the sensor, but felt the screw-in might be form a better seal.
The hardest part of the entire install was cutting the hole in the top of the tank. Between limited access and a limited toolset — we’re on the road travelling without my normal complement of tools — it was tough to get tools in and cut a neat hole. With the hole cut, I lined the flange of the mounting ring with butyl tape and screwed it in place. Fortunately, running wires on the RV is pretty easy. The frame rails under the house provide good protection and routing for wiring.
Connecting to Venus OS
Tank senders use one of three ways to indicate the level of a tank: resistance, voltage, or current. In each case there’s a range of values the sender will send, these values proportionally indicate the reading of the sensor. Pressure based transducers use current to indicate their readings. Victron Cerbo GXs include four inputs for resistive tank senders. But, I’m using current based senders, not resistive, and I’m not using a Cerbo. I’m using a Raspberry Pi running Victron’s Venus OS. Fortunately, Victron offers the roughly $100 GX Tank 140 which supports up to four current or voltage based tank senders.
The transducer I’m using sends 4 milliamps of current if the tank is empty and 20 milliamps of current if the sensor is reading its maximum depth. For this transducer maximum depth is 2 meters. But, my tank isn’t 2 meters deep. After drilling into I determined it’s a little under 1 meter deep. That means my transducer will never send 20 ma since the liquid height will never reach 2 meters.
Once the tank is connected to the GX Tank 140 and it is connected to the Venus OS device, via USB, the tank needs to be setup. For this installation I’ve decided to only worry about my gray water tank so I’ve disabled the other three tank channels on the GX 140.
First steps in setting up a tank include selecting the fluid type, tank capacity, and values when full and empty. To determine the full value I had to fill the tank to its capacity. When I cut the hole in the tank, I noticed that the tank gets dramatically wider at the top, so I knew the capacity readings would be non-linear.
The spec sheet for Harvey shows a gray water capacity of 60 gallons. During the course of my calibrations I had to fill the tank to full multiple times. Each time I did this, the tank proved to be entirely full at 50 gallons. So, right off the bat, I learned the tank holds 83-percent of its claimed capacity.
As I mentioned, when I cut into the tank, I noticed that the bottom three quarters of the tank was significantly smaller than the top of the tank. That non-linear shape means that the liquid level will shoot up quickly until it reaches the wide portion of the tank. As a result, I needed to do a calibrated fill of the tank. I did this by pouring in water, one gallon at a time, and noting how full the tank read. For example, with 10 gallons of water in the tank, the sensor was reading the tank as 33% full.
Another interesting thing I learned from this excericse is the extent to which the existing 1/3, 2/3, full tank gauge is innacurate. With 14 gallons of water — or 23 percent of the rated and 28 percent of the actual capacity of the tank — the factory equipped gauge read two thirds full. With 23 gallons of water in the tank, which equates to 38 percent of rated and 46 percent of actual capcity, the stock gauge showed the tank as full. This explains a lot about why we felt gray containment is such a pain. We thought we had 60 gallons of capacity, but the gauge was showing full at 23.
Armed with my scrawling calibration notes, I was able to put in a number of points inform Venus OS of the shape of the tank. You can enter up to 10 calibration point pairs. The pairs consist of the sensor’s reading and the actual level of fill of the tank at that point. Because my tank is smaller at the bottom and larger at the top the level read by the sensor increases rapidly towards the bottom and then slows precipitously as the tank gets fuller. For example, between 10 and 20 percent actual fill, the sensor reads an increase of 27 percent. Between 70 and 80 percent, the sensor reads an increase of 6 percent.
Using the system
With everything installed and calibrated, I can enjoy the fruit of my (okay mostly Victron’s) labors. Victron’s remote management portal (VRM) allows easy review of both current and historic tank levels. As I experienced with the same transducer technology with Maretron’s TLM-100, the precision of these sensors is quite impressive. After completing calibration, I filled the tank with 10 gallons of water. I added one gallon at a time and found the sensor was reporting within 0.05 gallons of what I’d added.
The chart above shows the results of a shower, load of laundry, some dishes, and hand-washing. There’s currently about 17 gallons of water onboard. The chart above shows 9 gallons of water used to do a load of laundry. The specs for the Splendide washer and dryver combo show 9-16 gallons for a load. Knowing that gives confidence in continuing to use the RV and fill the tank. In contrast, the stock monitor currently shows the tank is 2/3 full.
If you use the GX console, whether via a display built into a Color Control GX, a GX Touch 50 or 70 attached to a Cerbo GX, or a remote console via VRM, you can enable a tank level page that will display the level of any connected tanks. As you attach more tanks, the interface allows displaying all tanks or filtering by type. It’s a nice, at a glance view of the status of your tanks.
Building a GX system
I haven’t concentrated on the rest of the GX system necessary to use the GX Tank 140, but you will need a device running Venus OS to get all this goodness. On Harvey, Venus OS runs on a Raspberry Pi. The total cost of that system is about $190. At first, I thought that if I had installed a $300 Cerbo GX, I wouldn’t need a GX Tank 140 because the Cerbo has tank channels built-in. It turns out that’s not right. The Cerbo tank channels only support ressistance senders so you would need the GX 140 with either option. To add tank monitoring you will need the $100 GX Tank 140 and at least one $40 tank transducer.
I haven’t yet, but plan to add the VE.CAN to NMEA 2000 adapter. That will make tank, and lots of other, data available on the NMEA 2000 network.
In my opinion, the GX Tank 140 and a pressure transducer represent a great bargain. Being able to get the accuracy they deliver for under $150 is pretty impressive. If I were less obsessive about accurate information, I probably could have lived with the inaccurate gauge and just told myself it was wrong. But, even when I tried that, after a few days of staring at thtat red light, I felt like I needed to empty the tank. Victron’s GX/Venus ecosystem continues to impress with access to detailed information and tremendous value.