Portable Propane Tank Fuel-Monitor

image

I have a gas fireplace and portable generator that both run on portable propane bottles (the 20/40/100lb type you can transport to a filling station yourself). I’ve tried a few things to keep track of the fuel level but so far nothing worked well. Some scales are Bluetooth with a phone-app but have poor range, poor accuracy, and don’t integrate. Others are more accurate but require subscriptions and phone-apps (such as the Flame King one I modified, which needs a subscription for bigger tanks). Most can’t cope with any odd-sizes either.

I thought about building a scale with load cells but how to make it weatherproof and reliable with rain/snow, critters, etc.

So over Black Friday I decided to get one of the Flame King Bluetooth scales and gut it to repurpose the load cells and housing for my own measurement system that was more flexible. And it worked! Plus now I can get a Telegram notification with stuff like estimated available runtime (computed by real world use) being low.

I designed my HA sensors/automation to work with 20lb and 40lb tanks because that’s what I own, but there’s no reason you couldn’t tweak the code to support any other sizes that use a standard sized base from 10lb up thru 100lb tanks and it ought to work exactly the same.

Plans & Diagrams on GitHub:

Scale on Amazon:

6 Likes

Amazing. I am going to build a custom scale with ESPHome and HX711-compatible sensors, and I will be using your project as guidelines. Thanks.

2 Likes

Good luck! I was going that route but the off the shelf scale has 3 load cells so I couldn’t figure out how to hook it up myself and used the existing amplifier circuit. I’d love to hear if you learn some more about how to make that work if you don’t totally build your own scale from scratch.

@mmiller7 - did you configure your Fuel Remaining and Burn Rate via templates? If so, could you please share?

They’re on the previously GitHub already, yes they were with templates and statistics sensors.

2 Likes

@Rudd-0 Did you do anything about this? I am planning a propane scale with a load cell and hx711 to be placed outside and am very interested in a solution with temperature compensation.

1 Like

I did, and I used an NTC with a voltage divider and GPIO in to compensate for temp changes. Unfortunately i did not know electronics enough to know where to put capacitors on, and as a result my scale and temp readings are too noisy to be useful, so even with massive averaging and curve fitting i get ±5% fluctuations of compensated weight with outside temperature. This led me to be frustrated and not document anything in my blog. Should just have used I2C based thermocouple instead.

To be clear without temp compensation the differences are much bigger, so its stil lbetter than nothing.

Ok thanks for your quick reply! I’m new to this so I’m looking for any info I can get on this.

You’ll want to collect HX711 data and temp data, sampling frequently, then correlate them to find a compensation function that adjusts the HX711 readings based on temperature. Expect to use your fridge or outside winter weather a lot.

Ok I’ll dive into this do you have any code to share that can be used as a starting point?

Hoping to upload my scale’s YAML soon. Remind me later tomorrow please!

Thanks so much!
I’m going to work now, I’ll be back tomorrow have a nice day :grinning:

1 Like

Hello
just wanted to check if you had any code it’s not in a hurry as the shipping company seems to have lost my order.

It seems like everyone likes using a scale method but, you’d think a pressure transducer would be better ans its more compact and convenient than lugging around a seperate scale. What were the reasons for using a scale over a transducer or any other method? Please dont tell me it was just because you found someone elses code to use… Dont crush my spirit like that.

I’m assuming that you mean a pressure transducer that reads the pressure in the propane tank itself?

If so then I don’t think or see how a pressure transducer would be able to reliably read the liquid level in the tank.

First the pressure of the gas isn’t dependent on how full the tank is. It’s dependent on balancing the liquid boiling point temperature with the gas pressure.

So the liquid temperature is going to have a big impact on gas pressure - on a colder day the pressure will be lower than on a warm day.

And for a steady state temperature the pressure should stay pretty well constant in the tank as long as there is sufficient liquid to boil off to create gas. So the pressure should stay relatively constant until just before the liquid starts to be used up and then pressure will slowly start to fall until all the liquid is boiled away (boiling point is -43F).

But a scale system actually measures the weight of the liquid inside the tank which will decrease pretty linearly as the liquid is used up.

That’s also why they don’t fill the tanks up to a certain pressure but instead use either a volumetric measure or, for normal grill sized tanks (20/30lb tanks), they use a scale.

3 Likes

An excellent explanation why you can’t use a pressure sensor instead you weigh the bottles.

1 Like

Nope - pressure will give you a false reading. I actually modified one of those “green yellow red” inline gauges replacing it with a PSI gauge to help me diagnose fireplace problems and can tell you it will read the same.

Also the pressure varies a LOT with temperature of the tank and draw rate. At lower temperatures the pressure will drop while at higher temperatures the pressure will go up.

size   qty     temp   psi
1lb    ~0.5lb  ~71F   115PSI
20lb   15lb    59F    100-105 PSI
20lb   19.5lb  59F    95-100 PSI
40lb   39.7lb  59F    95-100 PSI
40lb   25.5lb  57F    90-95 PSI

Now I can also take that 1lb bottle from the first test and run it under warm water for a half a minute to simulate it being a warmer summer day…and that 115PSI shoots up to 160PSI. But the weight of it stays the same.

By measuring the weight, we are using the difference in density of the heavy liquid propane vs the lighter “empty” part of the tank that is vaporized propane. That lets us compute a reasonably accurate level of measurement compared to what the max legal fill quantity is.

The alternative is using an ultrasonic transducer but that introduces other variables such as the density of the gas varying with winter/summer/regional mixtures (other gasses or anti-freezing additives are often mixed in to help low temp performance in some climates) can confuse the sensors as its not “measuring” the level so much as the time it takes to reflect back and guessing the level based on velocity factor of the liquid fuel mix.

Just to make it more complex, as you use up the propane the remaining liquid has to “boil off” (LPG boils at -44F) to replenish the vapor pressure. This means it will cool down (same effect as your air-conditioner uses for its refrigerant high to low pressure) and that lower temperature will result in a lower pressure reading. This is also why high draw devices like a portable generator can actually cause ice to form on too small a tank and shut down fuel-starved when you still have half a tank of propane remaining. It has to be warm enough to keep up “boiling” with the rate its used up so the pressure stays high enough to operate.

By the time you get a low reading with the pressure gauge its going to be down to the last few ounces of fuel…maybe fine for a BBQ but not most other uses.

1 Like

Does the temperature compensation in your code work well? I would like to use it in my scale project.

I think “well-enough”. It still varies some, I don’t think the load cells are totally linear in their output with temperature, but its close enough I can reasonably tell when its severely low. I’m content with a couple pounds error over a 40lb tank for my needs…I tend to take it for filling around 2-5lb remaining but also if my fireplace pilot goes out its not a disaster and I can swap tanks.

I have also found that battery voltage seems to affect the readings a bit (I’m doing hourly reporting with a solar-charged battery powering my ESP) and I am also wondering if the length of time the board is powered has an effect as the voltage regulators warm up. It might do better if I ran an external 3.3V regulator to feed EVERYTHING thru the 3.3V rail instead of using the onboard 3.3V regulators, but I wanted to keep things simple and originally planned to use the AA batteries (which I was able to get about a month to a set, but not good enough to keep me happy)

1 Like

Thanks for the info I hope to get my components next week.