Smart home / Tank level monitoring

Connected heating-oil tank gauge with mobile and web accessEmbedded firmware development

Firmware for a connected heating-oil tank gauge

Alice is a gauge that screws onto the top of a home heating-oil tank and connects to an app on a smartphone or tablet. Households that heat with oil can find that an immediate delivery is not available in peak season, so a delivery has to be scheduled before the tank runs low.

The product owner needed firmware for the gauge so that tank level and consumption could be read reliably and passed to the app, which shows gallons used and remaining and notifies the user when it is time to refill.

Alice heating-oil tank gauge with the mobile app showing tank consumption over 30 days
The Alice tank gauge, which runs the firmware Indeema developed, with the product's mobile app showing tank consumption.
Product
Connected heating-oil tank gauge with mobile and web access
Buyer
Consumer device companies connecting a measurement product to an app
Engagement
Embedded firmware development
Indeema scope
Gauge firmware, Level readout and notification logic

The product need

What had to become possible

The product owner needed firmware for the gauge so that tank level and consumption could be read reliably and passed to the app, which shows gallons used and remaining and notifies the user when it is time to refill.

Ownership, made clear

Where the work started and what Indeema owned

Starting system

Product idea

The client's starting point was the idea of making it easy to see oil level and avoid running out, built around a gauge that mounts on the tank.

Market review

Indeema reviewed the devices already available on the market before the gauge firmware was developed.

Indeema owned

Gauge firmware

Develop the firmware for the tank-mounted gauge on an ESP32 system-on-chip using PlatformIO and the Arduino framework.

Level readout and notification logic

Implement the level readout and notifications for different oil levels in the tank.

Worked with

Gauge to app

The gauge connects to the app and sends level data, which the app shows as gallons consumed and gallons remaining.

Accounts and access

One account can hold several gauges and is available through iOS and Android apps and a website account.

Product constraints

What made the engineering difficult

  1. 01

    Notifications at the right level

    Notifications had to be programmed for different oil levels so users are told when to arrange a refill.

  2. 02

    Fine-grained readout

    The requirement called for a readout to the nearest tenth of a gallon.

  3. 03

    Install by homeowners

    The device had to be easy to install for homeowners unfamiliar with smart technology.

  4. 04

    Several properties per account

    Users needed to check multiple properties, and so multiple gauges, through one app.

Engineering judgement

Decisions that shaped the product

ESP32 with PlatformIO and Arduino

The gauge firmware runs on an ESP32 system-on-chip and is built with PlatformIO and the Arduino framework.

Level-based notifications

Notifications are tied to oil-level thresholds rather than left for the user to check manually.

Delivered product capability

What the product can do

  1. 01

    Tank level readings

    Read the oil level from a gauge mounted on the tank and send it to the app.

  2. 02

    Consumption view

    Show gallons consumed, gallons remaining and historical consumption data.

  3. 03

    Low-level notifications

    Notify the user when the tank needs topping up.

  4. 04

    Multiple gauges per account

    Connect several gauges, for example at different properties, to one account.

Product change

What changed for the product team

The gauge gained firmware that reads the tank level and sends it to the app, so a homeowner can see oil used and remaining across one or more tanks and receive a notification before a refill is due.

For a company turning a household measurement device into a connected product, the case shows the firmware work behind level readings, threshold notifications and multi-device accounts on an ESP32 platform.

  • Gauge firmware that reports heating-oil level to the app, which shows usage and remaining oil and sends refill notifications.
Tank-level measurement deviation
±4 %
Firmware measurement · Accuracy programmed into the gauge firmware

Technology, in context

ESP32 · PlatformIO · Arduino framework

A comparable product problem?

Alice heating-oil gauge

Bring the product context, the system that already exists and the engineering decision you need to make.

Discuss a comparable challenge