Tracking EV Wallbox Consumption for multiple Cars with Home Assistant and Shelly

Good morning,

In view of the arrival of our family’s third electric vehicle, I am designing a system to track the energy consumption of our garage wallbox in order to split the costs fairly among the different users.

Here is our current setup:

  • 1x 11kW Wallbox: Has no built-in management features.

  • 1x ESP32 (running Tasmota): Used to control the contact on the Type 2 control connector. It is currently connected to a Domoticz server, which will soon be migrated to a Home Assistant instance.

  • 3x Vehicles: Different brands, but all capable of connecting to Home Assistant in one way or another (via MQTT or dedicated integrations).

  • Electrical System: No other loads or appliances are connected to this electrical line.

  • Location: The garage is detached, located at least 100 linear meters away from the other garages

  • Dynamic Energy Tariffs: Prices are published daily for the following day. Polling and auto-activation are already integrated and working on the tasmota ESP32 (via GitHub - paolomeraviglia/AMB-tasmota-timers: Auto generate timers to use dynamic fares from Azienda Multiservizi Bellinzona on tasmota devices · GitHub).

The main idea is to install an energy meter directly inside the wallbox. Among all possible solutions, using a Shelly 3EM-63W seems like the most practical approach. Since the main utility meter is too far away, solutions like Home Assistant Glow or direct utility meter pulse readers are not feasible.

Here is the proposed plan:

1) Tracking Individual EV Charging Consumption

  • Create a Utility Meter helper for each car, configured with low_fare and high_fare tariff counters.

  • Use location data (geofencing via Home Assistant vehicle integrations) to identify which car is currently parked in the garage.

  • Export and update dynamic tariff schedules within Home Assistant (similar to what I am doing with Tasmota), strictly for accurate billing rather than hardware control.

  • Since the Shelly 3EM has a detection threshold around 30VA, once active charging power is detected, accumulate energy consumption into the corresponding vehicle counter using the following business logic:

    • Check which car is inside the garage geofence.

    • Check the active tariff rate.

    • Add the consumption to the matching counter.

2) Tracking Baseline Wallbox Standby Consumption

  • The wallbox features two LED light strips and an internal control board, which draw a small, steady amount of power.

  • This baseline standby consumption will be measured on the utility bill upfront, deducted from active charging sessions, and divided equally among all users on a monthly basis.

The most complex part is obviously point #1 (the business logic). Does anyone who has built a similar setup have recommendations or best practices for tracking consumption accurately?

In theory, the ESP32, Shelly meter, and Home Assistant server will remain online 24/7. However, I am also open to considering a delayed/batch ingestion approach (e.g., daily processing) if needed.

Thanks in advance to anyone willing to share their insights!

1 Like