Mopeka Enhanced - Ultrasonic tank monitoring now made easier!

Hello all, and welcome to my first ever custom component release for Home Assistant.

Mopeka Enhanced!

This component is actually an enhancement to the native Mopeka integration in HA core. Anyone who has used Mopeka sensors with the native integration will know just how basic it is, providing only a fluid level reading in inches. This isn’t very useful when we’re used to seeing sensor report in percent or gallons.

The previous solution was to create template sensors to convert inches to percent, but it’s been a pain point for many people throughout the years. I set out to change that. For myself, and others. Here’s what I’ve come up with!

Features

  • Tank presets for horizontal and vertical style propane tanks in gal/lbs (US standard sizes only)

  • Standard IBC tote presets for 275 gallon and 330 gallon sizes (available for all non-propane medium types)

  • Option to define your own custom tank height in millimeters, and tank volume in gallons

  • Automatic detection of top mount sensor models (TD40 and TD200) for correct sensor measurements (top mount sensors read through the air instead of liquid mediums)

  • Updated config flow menu for tank configuration based on medium type selection and device detection (top mount sensors)

  • Added background calculations to better handle horizontal propane tank geometry (hemisphere endcaps)

  • Added two sensors for tank fill (percentage), and tank volume (gallons)

  • Added two diagnostic sensors for Medium type (currently configured medium), and Tank preset (currently configured tank preset)

Now I’m not a developer by any means, but I am a Systems Engineer, so I have good grasp on what I’m doing here. Yes this was mostly vibecoded, and you can read more about that on the Git repo. If you’re not ok with that, then no problem.

I 100% welcome PR’s from anyone who would like to improve upon this work. Particularly in the tank preset area. I obviously don’t have every tank type available to test, so help in that areas is greatly appreciated.

I’ve updated the integration to now include the ESPHome presets for the 6kg, 11kg, and 14kg propane bottles.

I’ve also added the option to input Gallons/Kilograms/Liters when selecting custom tank entry. Kilograms is available for custom propane entries, and Liters for all other medium types.

Looks like it wasn’t too hard to extract the tank types from the official Mopeka app. I’ve added all of the US and Euro tank types as defined in the app to the enhanced integration.

There’s a lot of regions listed in their data file for tank types. I may eventually add the rest when I get some time on my hands. See the follow git repo for a breakdown of the tanks types.

I’ve just released version 0.2.5 that includes 20 new ASME tank presets from Armebe, Flame King, and Manchester. This should cover the majority of RV style horizontal propane tanks in the US region.

Hi,

Working great. Got to go ahead and delete my custom sensors to convert tank depth in inches to % of a 500 gallon tank. Thanks.

For internet posterity… I was trying to figure out why my Mopeka Pro Check Plus kept dying so quickly. I think it was because of the “fins” on the positive terminals of the AAA battery slots. They were preventing good contact. The newest replacement batteries I bought wouldn’t contact at all. Trimmed them out with a utility knife and a flathead, pulled the contact out 1MM, and now the new batteries are making excellent contact.

Using this on my TD40 & TD200 sensors. Works great! The only thing that I believe is missing for these top-down sensors is the specification of an overall height of the sensor which sits above the maximum height of the water level. The Mopeka app provides both the max water level height and overall height of the sensor measured from the bottom of the tank. Guess for now I still need to add some helpers to convert data.

I’ll look into this. I don’t have a top down in use right now, but I’ll see what I can do here.

I release v0.2.8 with changes for the top down sensors. Let me know if this resolves your issue.