Home Energy Management: Home Assistant vs evcc vs Inverter Apps

Home Assistant vs evcc vs inverter apps: compare solar, battery and EV charging controls, local integrations, costs and safe fallbacks.

Quick Summary (TL;DR)

Choose Home Assistant when you need broad integration and visibility across many brands; choose evcc when coordinated EV charging is the central problem; and retain the inverter manufacturer’s own controls for safety-critical battery and inverter operation. These systems can work together. None should be assumed to replace a grid-compliant inverter controller, charger protection functions or installer-commissioned export limits.

For a home with rooftop solar, a battery, an EV and a hot-water cylinder, the best architecture is often inverter app for commissioning and warranty settings + evcc or charger-native logic for EV charging + Home Assistant for monitoring and non-critical household automations. Simpler homes may need only one or two of these layers. The right choice depends on available local interfaces, supported hardware, electricity tariffs and what continues to operate if the internet or Home Assistant fails.

What each system actually does

Home Assistant is a general-purpose smart-home platform with integrations, dashboards, automations and an Energy dashboard. It can collect power and energy data, apply tariffs, schedule appliances and coordinate devices that expose supported controls. It is not, by itself, a certified power-management device or a guarantee of local connectivity.

evcc is specialist energy-management software focused on optimising charging for electric vehicles and related flexible loads. It uses configured site meters, tariffs, chargers and vehicle integrations to decide when and how much to charge. Supported features, integrations and any licensing or sponsorship requirements depend on the current release and device; check the official documentation before buying hardware.

Inverter apps are the monitoring and configuration interfaces supplied with solar inverters and hybrid battery systems. They may provide export limitation, battery reserve, operating modes, time-of-use charging and vendor-specific energy flows. Their local and cloud interfaces vary by model, region, firmware and installer permissions.

DecisionHome AssistantevccInverter app
Primary purposeWhole-home visibility and automationEV charging and energy-aware load controlSolar and battery operation
Multi-brand reachBroad, integration dependentBroad for supported charging/meter devicesUsually vendor ecosystem
Typical local operationOften possible, device dependentOften possible, integration dependentVaries widely
Battery safety and BMSObserve and request supported modes onlyObserve and coordinate supported controlsManufacturer-approved controls remain authoritative
EV chargingAutomations and charger integrationsDedicated charging optimisationSometimes basic charging features
Internet outageLocal integrations can continueLocal integrations can continueCloud app may be unavailable; inverter normally continues
Setup burdenMedium to highMedium; hardware compatibility criticalUsually easiest for supported equipment

Choose by the job, not the brand

One inverter, no EV, no smart loads

Start with the manufacturer’s monitoring and scheduling functions. Confirm whether its data can be read locally, whether export limitation is configured independently of the cloud and whether you need additional monitoring at all. A separate server adds power consumption, maintenance and failure modes. If the app already meets your reporting and battery-reserve needs, a second platform may add little value.

Solar PV and one smart EV charger

A charger with a supported meter and proven solar-surplus mode may be the lowest-maintenance option. evcc becomes attractive when tariff optimisation, multiple cars, charger selection or mixed-vendor equipment complicate the problem. Home Assistant can supply a dashboard and occupancy or departure information, but do not make a generic automation the only protection against exceeding the service limit.

Solar, home battery and two EVs

Separate power safety from optimisation. Let approved equipment enforce the supply limit and inverter constraints. Use evcc if its specific chargers, cars, meter and battery integrations support the intended prioritisation. Use Home Assistant for cross-system visibility and less urgent loads. Test that a second vehicle plugging in cannot defeat the charge-current allocation.

Heat pump, hot-water cylinder and flexible appliances

Home Assistant often has the broader device and scheduling coverage. Use supported heat-pump interfaces and the manufacturer’s temperature and hygiene controls. A hot-water immersion diverter should have its own certified power control and thermostatic safety arrangements. evcc may also manage selected flexible loads, but verify the current feature set rather than assuming every appliance is supported.

Off-grid or backup-oriented household

Prioritise the inverter’s approved reserve, islanding, generator and battery-protection functions. Treat third-party optimisation as advisory and fail-safe. Home Assistant cannot substitute for anti-islanding protection, battery-management logic or transfer-switch interlocks. Document what happens when the automation host reboots during an outage.

Architecture: where to put the decision-making

A robust system has four layers. The electrical protection layer contains breakers, RCDs where required, charger protections, certified export limits, battery BMS and inverter controls. The equipment-control layer contains native charger load balancing and approved battery/heat-pump control. The optimisation layer chooses charge windows, targets and load priorities. The visibility layer records measurements and explains the outcome. Place safety constraints below software optimisation so a failed script cannot defeat them.

LayerResponsible equipmentFailure behaviour to require
Electrical limitsApproved charger, inverter and protective equipmentRemain enforced without home server
Battery operationBMS and inverter controllerMaintain reserve and protective limits
EV optimisationevcc or supported charger-native controllerDefined current and schedule fallback
Household schedulingHome Assistant or vendor controlsManual operation remains available
ReportingHome Assistant Energy dashboard and meter historyMissing data is labelled, not fabricated

Avoid two independent systems writing the same EV charging current, inverter battery mode or hot-water schedule. A controller conflict can produce repeated starts and stops, unexpected imports and misleading savings. Assign one clear owner to each writable control. Read-only monitoring can be shared more freely.

Metering is the foundation

Before choosing software, identify the physical measurements available at the grid connection, solar inverter, battery and EV charger. For surplus charging, the important signal is normally net grid import/export measured at the appropriate point, with correct sign and phase handling. An inverter’s PV-generation figure is not a substitute for net export: the house and battery may consume the solar output first.

A three-phase household needs particular care. Some equipment responds to the sum of phase powers, while electrical supply and charger constraints can apply to individual phases. Check whether the chosen meter and charging system handle asymmetric phase loading, minimum current and phase switching correctly. Never assume a meter with a Modbus port is compatible merely because the software supports Modbus in general.

MeasurementWhy it mattersCommon trap
Grid import/export power (W)Controls surplus and import capsWrong CT orientation or sign
Grid imported/exported energy (kWh)Billing reconciliationTreating instantaneous power as energy
PV generation (W/kWh)Production and self-consumptionConfusing generation with available surplus
Battery power and SoCCharging priority and reserveDifferent positive/negative sign conventions
EV charge power and stateDeparture readinessVehicle sleep or delayed API updates
Tariff price and validityOptimisation costWrong time zone, units or stale feed

Use the Home Assistant Energy dashboard entity guide to avoid double counting. Verify imported energy against the utility meter over a representative period, especially if sensors reset or integrations report cumulative counters inconsistently.

Local APIs, cloud services and offline resilience

“Works with Home Assistant” is not synonymous with “works locally”. Some integrations call a vendor cloud, require an account, poll slowly or expose only monitoring. A product may offer a local protocol but reserve commissioning or write permissions for an installer. Confirm the exact hardware revision, firmware, regional variant, gateway and supported commands before committing to a platform.

InterfaceStrengthCaution
Modbus TCP/RTUOften useful for inverter and meter telemetryRegister map and writable registers are model-specific
MQTTEfficient local messaging where supportedTopic semantics and retained commands need careful handling
Local HTTP/APIGood integration without cloudAuthentication and update compatibility vary
OCPPStandardised charger-management protocol in supported equipmentVersion and supported profiles matter
Vendor cloud APIConvenient access without local gatewayInternet, account, quotas and service changes
Matter/Thread/ZigbeeLocal control for selected smart-home devicesNot a universal solar inverter or EV interface

For a resilient design, test with the internet disconnected, then with Home Assistant stopped, then with the evcc host stopped. Record whether charging continues safely, whether the battery keeps its reserve and whether manual operation is possible. A dashboard that becomes unavailable is an inconvenience; a charger that exceeds an electrical limit is unacceptable.

Home Assistant: strengths and limitations

Home Assistant excels when a single screen must combine solar generation, household consumption, battery state, heat-pump telemetry, tariff prices and room conditions. Its automation engine can coordinate equipment with different APIs. The Energy dashboard is designed for historical accounting, not a sub-second protective control loop. A general automation that polls every minute may be too slow for some dynamic electrical constraints.

The cost is complexity. Entity availability, recorder retention, API changes, automation restarts and template unit errors can all affect outcomes. Treat missing values as unknown rather than zero. Use explicit hysteresis and minimum run times for flexible loads. Keep vendor control modes documented so a Home Assistant automation cannot fight a native schedule.

Example: read-only site health checks

Create a dashboard showing grid power, PV output, battery SoC, charger status, electricity price, last update time and controller availability. Add alerts for stale meter values and sustained unexpected imports. Begin with observation for at least a week before allowing any automated write commands. That baseline exposes incorrect sign conventions and normal household variability.

evcc: where a dedicated charging controller helps

A dedicated EV optimiser can evaluate available surplus, charging targets, tariffs and charger capabilities together. This is especially valuable when a vehicle has a departure deadline, solar production changes rapidly or several cars compete for limited current. The benefit depends on supported devices and reliable meter feedback; an unsupported charger can reduce the system to crude on/off switching or no control at all.

Before selecting evcc, verify your charger model, firmware, vehicle integration, site meter, battery integration and whether the desired features are available under the current project’s sponsorship or licensing arrangements. Do not rely on an old comparison article for pricing or feature eligibility. The official evcc documentation and project website are the appropriate starting points.

Worked surplus example

Suppose solar generation is 5.2 kW, house demand excluding the EV is 1.4 kW and the battery is charging at 1.0 kW. Available surplus is approximately 5.2 − 1.4 − 1.0 = 2.8 kW, before conversion losses and metering delays. On a nominal 230 V single-phase circuit this corresponds to about 12.2 A. An EVSE generally has a minimum permitted charging current and the charger/vehicle combination may not follow a request instantly. A controller must apply its supported minimum, current step, phase configuration and hysteresis rather than blindly writing 12.2 A.

If a kettle adds 2 kW of household demand, surplus drops to around 0.8 kW. A solar-only policy may pause charging, while a minimum-current or tariff-assisted policy may import some grid power. Neither outcome is universally “correct”: it depends on the user’s objective and equipment limits. Electrical overload protection must remain independent of this economic choice.

Inverter apps: useful native controls, limited portability

The inverter’s own interface is often best for installer-commissioned parameters, backup reserve, approved battery operating modes and firmware maintenance. Some manufacturers offer well-documented local telemetry; others require cloud portals or optional data loggers. Even within one brand, supported functions differ by inverter family, battery type and regional grid code.

Avoid setting export limits or changing battery-protection parameters through unofficial write registers. A third-party controller may request a supported battery mode, but the inverter and BMS must retain authority over safe operation. If warranty support matters, document any integration and confirm whether the manufacturer supports it.

Total cost: a realistic five-year comparison

Software licences are only one line item. Include a reliable always-on host, supported meters, network equipment, installer labour, gateway replacements, subscriptions and your time maintaining integrations. A cloud-free setup may reduce subscriptions but increase setup and support effort. Conversely, a vendor app can be low cost until a second brand or new EV requires a separate ecosystem.

Cost itemHome Assistant routeevcc routeInverter-app route
SoftwareCore platform available without licence fee; add-ons varyCheck current sponsorship/licensing for featuresOften included; premium services may vary
HostExisting HA host or dedicated deviceSupported host/container/compatible platformUsually vendor logger and phone/browser
Meters/gatewaysDepends on device integrationsCompatible grid/charger meters often crucialMay be bundled or proprietary
Setup effortCross-device configuration and testingSite topology and charger setupOften lowest within one brand
Ongoing maintenanceAutomations, integrations and backupsIntegration updates and charger changesVendor firmware and cloud account
ExpansionStrong across many categoriesStrong for supported charging ecosystemMay be limited outside brand

Illustrative planning example, not a price quotation: if a separate host and networking consume 8 W continuously, annual electricity use is 0.008 kW × 8,760 h = 70.1 kWh. At £0.25/kWh that is about £17.52 per year, or £87.60 over five years before tariff changes. A host already running Home Assistant may have little incremental electricity cost; buying another dedicated machine could be unnecessary. Use local electricity rates and measured power to build your own comparison.

How to avoid duplicate control and double counting

Decide which controller owns each setpoint. For example, an approved inverter controller owns battery reserve, evcc owns EV charging targets, and Home Assistant owns discretionary appliance scheduling. Configure the other platforms to observe those states without issuing competing commands. If the inverter has its own timed battery charging and Home Assistant sends a different battery schedule, choose one source of truth.

Keep a diagram of each meter location and sign convention. Grid import, PV production and battery charge/discharge must reconcile physically. If the inverter app reports “self-consumption” differently from Home Assistant, inspect definitions before declaring one inaccurate. Some figures are instantaneous; others are daily totals or estimates with different sampling intervals.

Practical deployment plan

Step 1 — Audit existing hardware

List inverter, battery, charger, vehicle, meter and heat-pump model numbers, firmware and network interfaces. Identify whether data is local, cloud-only or not exposed. Check the installation manuals and region-specific support lists.

Step 2 — Map energy flows

Draw the grid meter, PV, battery, EV charger and flexible loads. Verify where CT clamps or meters sit and whether three-phase aggregation is required. Compare live values with physical loads and the utility meter.

Step 3 — Pick one charging authority

Choose the charger’s native control or evcc for EV optimisation. Use Home Assistant to supervise or supply high-level requests only when the integration explicitly supports that arrangement.

Step 4 — Add Home Assistant monitoring

Import supported entities, set units correctly, configure long-term statistics and build a dashboard. Record several days of baseline data before adding automations.

Step 5 — Configure failure behaviour

Disconnect cloud access, stop the automation host, interrupt meter data and simulate device restart under controlled conditions. Confirm safe charging and documented battery behaviour.

Step 6 — Measure results

Track imported kWh, exported kWh, EV delivered energy, missed departure targets, comfort and maintenance incidents. Compare like-for-like periods; weather and driving habits can overwhelm apparent software savings.

Common problems and how to diagnose them

SymptomLikely causesFirst check
Solar charging imports from gridMeter lag, minimum current, battery priorityGrid meter placement and current limits
Battery drains to charge the EVController cannot distinguish battery dischargeBattery policy and meter availability
Charging starts and stops repeatedlyNo hysteresis or competing schedulesSingle control owner and minimum dwell time
HA and inverter totals disagreeDifferent sign, boundaries or samplingRaw meter registers and accounting period
Cloud outage breaks automationCloud-only integrationLocal API support and native fallback
Three-phase load exceeds expectationWrong phase assumptionsInstaller verification of phase measurement
Prices produce odd schedulesTime-zone or p/kWh versus £/kWh errorTimestamp and currency units
Control fails after firmware updateAPI or permissions changedRelease notes and read-only health checks

Deep-dive buying guide: what “energy management” really means

The three options are often compared as if they were interchangeable products, but they operate at different layers. A dashboard records what occurred; a controller selects a desired outcome; a compliant inverter, EVSE or energy-management device enforces what it is allowed to do. A Home Assistant automation cannot become the property’s electrical protection merely because it can read a smart meter. Likewise, an attractive inverter app does not necessarily control a third-party EV charger. evcc is a powerful charging optimiser, not a blanket guarantee that every solar inverter, vehicle, heat pump and battery can be commanded in every operating mode.

The purchase decision starts by documenting the existing assets and identifying an unmet need. Is the problem poor visibility, unnecessary battery discharge to an EV, expensive overnight charging, limited supply current, or the inability to coordinate devices from different manufacturers? Each problem has a different least-complex solution. One well-configured charger-native solar mode can outperform a fragile collection of five integrations if the household has only a single car and a simple electricity tariff. Conversely, separate PV, battery, EV and hot-water systems can justify an overarching monitoring and scheduling layer once their native operating modes and safe fallbacks are understood.

RequirementFirst platform to evaluateWhat makes it a poor fitWhat must remain independent
Whole-house power dashboard and historical kWhHome Assistant Energy plus sound meteringCloud-only values too slow or inaccurateUtility billing and certified meter records
One EV solar surplus chargingCharger native system or evccNo controllable charger or grid meterEVSE electrical protections
Two EVs sharing available currentApproved charger load sharing; evcc for schedulingCharging points cannot report/control reliable currentCommissioned circuit and site limits
Battery reserve and grid-code export restrictionApproved inverter/BMS platformThird-party write API not approvedBMS, export limiting and anti-islanding
Heat pump with weather compensationHeat pump native controllerSetpoint chasing harms COP/comfortCompressor and hydraulic protection
Tariff-aware shiftable loadsHome Assistant or evcc for supported loadsSupplier pricing or appliance control unavailableAppliance thermal and electrical safety
Mixed-brand report for household decisionsHome AssistantIncorrect entity semantics create double countingDevice operating systems

Buying rule: request an integration matrix before ordering new hardware. List each exact model, firmware, local endpoint, available measurements, writable setpoints, update interval and fallback behaviour. A product with an advertised API may still offer only daily cloud energy totals; that is unsuitable for responsive solar surplus control. Similarly, a device’s advertised Modbus support says nothing about whether the specific battery charge-mode register is exposed, writable or allowed by the manufacturer.

Decision scorecard: rank reliability and control fit before features

A neutral decision process makes assumptions visible. The following weights are illustrative, not independent test results. Give the largest share to compatibility and safety, then to offline behaviour, usable energy data, day-to-day convenience and lifetime cost. Owners with an electric car used for long daily commutes may increase the importance of departure deadlines. Owners without an EV should reduce the weight given to charging functions; there is little reason to deploy dedicated EV software just because it supports an impressive list of inverters.

CriterionExample weightingProof to request
Exact hardware and firmware compatibility25%Published device template, integration entities or written manufacturer answer
Failure behaviour and safe control boundaries20%Documented loss-of-comms behaviour and site commissioning record
Local operation and network requirements15%Demonstration without WAN; required ports and account details
Measurement quality and physical topology15%Raw import/export plus PV/battery/charger measurements with clear units
Operating features that solve this household problem15%One-week trial with real vehicle and tariff
Five-year ownership and support10%Itemised host, licence, meter, support and maintenance costs

Do not award an automatic high local-control score just because a software project is self-hosted. If it depends on a cloud vehicle API for battery state of charge, that specific feature remains cloud dependent. A charger can be controlled locally while its associated car is queried remotely. Home Assistant may collect local inverter telemetry but use a cloud-based solar forecast. A vendor app may have local commissioning but cloud-only remote history. Describe locality per data source and function, not as a marketing label for the whole installation.

Energy-flow accounting: reconcile the site before introducing automation

Consider a home with rooftop PV, a battery, an EV charger and ordinary loads. Start with a consistent instantaneous power sign convention: PV output, grid import, battery discharge and inverter outputs are positive when supplying the household; grid export and battery charging are recorded as outgoing flows. One possible balance, ignoring minor conversion losses and measurement lag, is PV + grid import + battery discharge = household loads + EV charging + battery charging + grid export. If the system reports an implausible balance, do not use it to compute “free solar for the car” until you have resolved meter location and signs.

The word household needs a boundary too. Some inverters report “load” including the EV charger, some report non-EV consumption, and some vendor dashboards calculate a residual rather than measure a circuit directly. A separate EV meter can be useful for billing and attribution, but adding EV kWh to a whole-house import total again is double counting. With hybrid inverters, AC-coupled storage and battery losses can also make short-interval meter reconciliation imperfect. Inspect an hour of raw timestamped power and later verify daily accumulated energy against the utility record.

Illustrative sunny minutePV powerOther loadsEV chargerBatteryGrid at boundary
Surplus before EV starts5.0 kW1.2 kW0Charging 1.0 kWExport 2.8 kW
EV begins at 1.4 kW5.0 kW1.2 kW1.4 kWCharging 1.0 kWExport 1.4 kW
EV ramps to 3.4 kW5.0 kW1.2 kW3.4 kWCharging 1.0 kWImport 0.6 kW
Battery stops charging5.0 kW1.2 kW3.4 kWIdleExport 0.4 kW
Cloud lowers PV to 3.0 kW3.0 kW1.2 kW3.4 kWIdleImport 1.6 kW

These are arithmetic examples, not measured performance from a named device. At a 230 V nominal single-phase supply, an EVSE minimum of 6 A corresponds to about 1.38 kW before power-factor and actual-voltage considerations. Three phases at approximately 230 V phase-to-neutral and 6 A each require roughly 4.14 kW of active charging power under balanced conditions. A charger may support 1P/3P switching, but the car, charger hardware, wiring and switching strategy must all permit it. Do not infer that every “three-phase-compatible” charger can change phases dynamically.

Grid meter location matters more than another clever algorithm

The site connection meter or correctly installed bidirectional CT arrangement should see the whole property. A CT installed only around the PV inverter output cannot measure export after household loads. A CT around an EV charger measures that load, not available surplus. On a three-phase site, verify phase assignment, current direction and the device’s aggregation method; check individual-phase supply constraints even if the energy bill is calculated from a net sum. A qualified installer should commission mains metering and any protective load-management equipment.

Meter polling is another engineering constraint. An inverter cloud portal updated every five minutes can be adequate for trends but unsuitable for following second-by-second cloud changes. A fast local meter can still become stale when Wi-Fi drops. The correct response is not to treat the missing reading as zero import, zero export or unlimited spare capacity. Suspend discretionary optimisation, fall back to supported charger operation, or keep the last safely bounded target only where the manufacturer explicitly approves that approach.

Controller ownership: define the command hierarchy in writing

An increasingly common problem is competing optimisation loops. The car has a departure timer, the EVSE has a solar mode, evcc tries to adjust charging current, Home Assistant turns the charger on and off, and the inverter changes battery behaviour using its own time-of-use schedule. Each component may be locally correct while the combination oscillates. Separating functions reduces contention: the EVSE enforces configured protective limits; one nominated higher-level charging optimiser issues routine current and schedule commands; Home Assistant reads the resulting status and orchestrates unrelated discretionary loads.

FunctionRecommended authoritySecondary platform roleCommon collision
Overcurrent, leakage and protective stopApproved EVSE and electrical installationMonitor status onlySoftware tries to bypass unavailable charger
Grid-export compliance and anti-islandingInstaller-approved inverter/limiterRead export and alertAutomation writes undocumented export registers
Battery reserve and internal protectionsInverter/BMS supported controlSlow preference only if officially allowedEV software discharges battery below household reserve
EV target current and surplus algorithmExactly one: charger-native or evccShow state; pass non-conflicting preferencesHA sends current while evcc also adjusts it
Vehicle departure/energy requirementChosen charging optimiser or native car scheduleProvide informational inputsDifferent timers veto each other
Water-heater or appliance scheduleEquipment-approved controller; HA where suitableEnergy and comfort displayHot-water hygiene cycle delayed by cheap-price logic
Whole-home analyticsHome Assistant or equivalentPublish read-only metricsDouble-count charge energy from two meters

Write down which controller is the final writer for each setpoint, who owns the system clock, what a manual override does, and how long a command is expected to remain in force. For EV charging, decide whether “Fast” is a deliberate temporary override with a defined end or a permanent mode change. For batteries, distinguish a permitted reserve preference from firmware settings that could breach warranty or grid compliance. Avoid attempts to build an external, high-frequency battery control loop on a general-purpose smart-home server unless the inverter vendor documents that operating mode and the safety case has been reviewed.

What evcc adds—and what it does not guarantee

The official evcc documentation describes local operation, solar surplus charging, dynamic tariffs, departure planning and a broad collection of supported chargers, vehicles, meters and battery systems. Its solar charging feature normally relies on the measured power flow at the grid connection. That is an important distinction: maximising charger current from inverter generation alone could discharge the home battery or import electricity when the household switches on an oven. evcc also offers integrations through its REST and MQTT interfaces, and can read selected Home Assistant entities.

However, supported monitoring does not necessarily mean supported control. A hybrid inverter may supply PV output, site import and battery state of charge to evcc while refusing third-party battery-mode changes. Vehicle state of charge may require a vendor cloud, credentials, or infrequent polling. A charger with nominal OCPP capability may not expose all desired current steps or may rely on proprietary firmware. Review the feature badges and integration caveats for the precise model, not the brand header.

Feature to verifyWhat to test on a real installationWhy documentation alone is insufficient
Charger start/stopThree start/stop cycles with vehicle connectedCar sleep behaviour and EVSE firmware can differ
Continuous current regulationMinimum, mid-range and rated current; phase readingsAdvertised control may only allow coarse increments
Automatic phase switchingApproved single/three-phase transition with supported carHardware-specific and not universal
Grid meter responseSwitch a known household load and observe sign/latencyCloud or gateway data may arrive late
Battery awarenessWatch whether EV demand drains reserved battery energyReading SoC does not equal enforceable battery policy
Departure targetSet a deadline with insufficient solar and confirm grid top-upA surplus-only mode may not meet the required charge
Tariff integrationCompare actual bill-inclusive import prices by timestampWholesale forecasts differ from retailer charges
Loss of connectivityDisable WAN, then local server/broker in controlled testsDifferent features fail at different layers

evcc sponsorship and licensing: evaluate the exact feature, not a remembered price

The project is open source, but some device integrations and components require a sponsor token. The project’s licence notes state that sponsor-required components have additional conditions and that a token is required per evcc instance using those components. Device documentation uses a heart symbol to mark sponsor integrations. There is no defensible fixed “evcc costs £X for everyone” assumption: whether a proposed installation needs a token depends on supported devices, the features selected and the terms in force when it is deployed. Check the sponsor-token documentation and current sponsor portal before purchasing an EVSE on the strength of an old guide.

Also distinguish EV charging optimisation from electrical load management. The evcc load-management documentation currently labels its feature experimental and lists restrictions, including behaviour with battery grid charging and rebalance limitations. That is not a substitute for every installation’s hardware-approved circuit management. A charger’s certified protections, locally commissioned limits, RCD arrangements and mandatory wiring practices take precedence. The practical choice may be to use the charger’s approved load-limiting system for hard constraints and evcc for slower discretionary optimisation, but conflicting controls must be reviewed and tested because the evcc documentation itself warns about multiple load controllers.

Home Assistant excels at visibility but needs a deliberately modest control role

Home Assistant’s Energy dashboard can combine grid import/export, PV yield, storage and individual devices, and its automation engine can consider presence, weather, tariffs and room conditions. It is often the best cross-vendor observability layer. Yet the Energy dashboard expects properly modelled accumulated energy sensors; instantaneous kW values cannot be substituted for increasing kWh totals. A template adding PV production and battery discharge must not double count if the source inverter already provides a derived whole-home consumption total.

Home Assistant also has integration-specific differences that matter to a purchaser. The official Fronius integration uses a local Solar API for supported models and documents configuration prerequisites. The official SolarEdge integration uses an API key and site ID for its cloud-based site sensors, so it should not be mistaken for a generic local SunSpec integration. The Victron GX integration uses MQTT with supported GX equipment and exposes a range of monitoring and control entities whose availability depends on the actual system. These are examples of differing interfaces, not a blanket endorsement of a particular inverter.

For forecasts, Forecast.Solar can provide estimated production; it does not measure production and its free access has update and array-plane limits. A planned action should therefore combine forecast information with a fresh physical meter reading and accept that a passing cloud may invalidate the prediction. Start with read-only alerts, then build slow, reversible scheduling only after a week or more of sound telemetry. Keep minimum runtimes, manual override and hard plant limits with the supported native controllers.

Example: read-only monitoring of a stale grid-power sensor

The following Home Assistant automation is an illustrative monitoring template, not charger control. Replace the entity ID and the mobile-notification action with the actual entities available on your installation. It notices when the net-grid power sensor has been unavailable for five minutes. It does not set a charger current, change an inverter register or override site limits. It requires a configured persistent-notification service, available on standard Home Assistant installations.

automation:
  - alias: "Energy meterAliExpress price missing - diagnostic alert"
    id: energy_meter_missing_alert
    mode: single
    triggers:
      - trigger: state
        entity_id: sensor.site_grid_power
        to: "unavailable"
        for: "00:05:00"
      - trigger: state
        entity_id: sensor.site_grid_power
        to: "unknown"
        for: "00:05:00"
    actions:
      - action: persistent_notification.create
        data:
          title: "Energy meterAliExpress price data unavailable"
          message: >-
            Site grid power has not been available for five minutes.
            Inspect the meter or network. Do not assume surplus
            energy is available from an unavailable measurement.

This will not detect a value frozen at a plausible number for a long time; that requires a device timestamp, sequence counter or other explicit freshness indicator. A stable legitimate zero-power reading should not automatically be treated as a fault. Any decision to disable discretionary loads in response to missing telemetry needs to be implemented at the relevant approved controller with a known loss-of-comms behaviour, not by a guessed dashboard sensor.

Example: monitor the difference between generation and site import

A simple analytical sensor can compute an estimated instantaneous non-PV contribution, but it is not a billing record or a safety input. The example below calculates net site export as the negative part of a signed meter where positive means import and negative means export. This only works if the supplied meter and its entity actually follow that convention. Check a known load and midday export first. It is intentionally read-only, and unavailable measurements remain unavailable.

template:
  - sensor:
      - name: "Site grid export power example"
        unique_id: site_grid_export_power_example
        unit_of_measurement: "W"
        device_class: power
        state_class: measurement
        availability: >-
          {{ is_number(states('sensor.site_grid_power')) }}
        state: >-
          {% set grid_w = states('sensor.site_grid_power') | float %}
          {{ ([0, -grid_w] | max) | round(0) }}

Before displaying this as “solar surplus”, consider whether the house battery is discharging. Net export can be produced by PV, a battery, another generator or some combination. It is also a snapshot: if the car starts drawing 1.4 kW, the grid reading changes and the controller must re-evaluate the physical balance. A read-only Home Assistant template is a good place to explore data semantics without risking control conflicts.

Inverter-native apps: where vendor-specific strengths genuinely matter

An inverter manufacturer’s controls typically remain the authoritative place for grid-connection profiles, battery integration, backup reserve, operating permissions, firmware updates, fault codes and warranty-related service. Those functions are tightly coupled to power electronics and the BMS. Their app may be entirely sufficient for a home with PV and storage but no flexible high-power loads. It can also remain the necessary service interface when Home Assistant and evcc are installed above it.

The drawback is portability. A vendor can support its own battery and EV charger beautifully but expose little about a competing EVSE or heat pump. Cloud dashboards can introduce outages, delayed samples, API quotas and account dependencies. Conversely, an inverter with reliable local telemetry may make adding Home Assistant inexpensive, because the hardware already exposes the measurements needed for an independent dashboard. Ask for the full device generation and local interface support, not merely the brand name.

Ecosystem examplePotential native advantageHome Assistant path (verify model)Procurement caution
Fronius inverter with compatible meterStrong inverter and site diagnosticsOfficial Solar API integration on supported devicesLocal API and data fields vary by model and configuration
Victron GX-based systemIntegrated local supervisory interfacesOfficial Victron GX MQTT integrationControl availability depends on GX and firmware; external ESS control is specialist
SolarEdge installationModule/site diagnostics in vendor platformOfficial site API integration; other local methods are distinctOfficial site sensors require API access and account permissions
Manufacturer-matched solar + battery + EVOne commissioning and support chainOften partial monitoring through official or community integrationThird-party charging limits and batteries may not be supported
Mixed-brand retrofitNo single vendor may control everythingHome Assistant for visibility plus evcc where compatibleMultiple vendor clouds increase dependencies

External battery control deserves particular caution. Victron, for example, documents specific ESS external-control modes with ongoing command and feedback requirements; these are not simply an invitation to write arbitrary Modbus registers from a hobby automation. Unsupported write access can disrupt reserve management, warranty conditions or regulatory settings. If you genuinely need an external battery-optimisation loop, require documented manufacturer operating modes, an experienced system integrator, robust feedback, a watchdog and a defined handover when the controller stops.

Tariff arithmetic: “use solar” and “save money” are not synonyms

A home energy controller should optimise the household’s actual marginal cost, not a slogan. At a sunny moment, consuming an extra 1 kWh from rooftop PV may avoid 1 kWh of grid import, but it may also forgo export income and reduce battery charging. If later household energy costs more, charging the EV from PV now can be cheaper or more expensive than exporting it and importing later, depending on tariff, battery efficiency, and the car’s deadline. Software needs the appropriate import price, export compensation, and operating limits to compare options meaningfully.

Illustrative alternative for one useful EV kWhAssumed price or valueSimplified interpretation
Use otherwise-exported solar nowLost export payment: £0.08/kWhEconomic cost about 8p per kWh consumed
Export solar, charge overnight at 12p/kWhExport 8p, import 12pNet cash cost about 4p per shifted kWh before losses/fees
Charge EV at expensive peak import rateImport 32p/kWhPotentially much costlier than daylight solar
Use stored battery energy instead of gridLater avoided import variesBattery cycling has efficiency loss and opportunity cost
Charge car before departure regardless of costReadiness is a constraint, not a priceOptimum must still finish within deadline

The illustrative 8p/12p comparison is deliberately simple and excludes charger efficiency, tax, standing charges, battery losses and tariff terms. The important result is that a solar-first strategy is not automatically a cost-minimising strategy. If solar export is worth 15p/kWh and overnight import is 9p/kWh, exporting 1 kWh and later importing approximately the same amount can be attractive, provided metered import/export rules and losses support the calculation. Conversely, where export compensation is zero or constrained, self-consumption becomes more valuable. Do not assume wholesale spot prices equal the bill-inclusive import rate.

Worked EV charging example: minimum current, energy target and departure

Suppose a car needs 18 kWh of additional battery energy by 07:30. At an assumed 90% overall AC-to-battery efficiency, the wallbox must deliver approximately 20 kWh. A single-phase charger drawing roughly 3.7 kW needs about 5.4 hours of actual active charging. If there are only four suitably sunny hours left and the car is connected now, a purely solar-surplus strategy cannot guarantee completion. The controller needs an explicit plan to import during a cheap period, charge faster where hardware allows, or inform the driver that the target is unattainable.

In a second example, four hours at 1.4 kW might transfer only 5.6 kWh from the supply, and less into the battery after losses. A dashboard showing “car is charging on sunshine” can therefore coexist with a missed departure target. Useful automation must measure both energy delivered and time remaining. Vehicle state of charge is helpful when accurate, but not every car provides a trustworthy real-time API; charger energy meters and an assumed efficiency can provide a rough fallback with clearly indicated uncertainty.

Battery versus EV priority: a worked constraint

Consider 4 kW of PV, 1 kW of ordinary load, and a battery charging at 2 kW. The nominal grid export is 1 kW. An EV requiring at least 1.4 kW cannot operate on strictly zero-import solar surplus at that instant unless the battery charging rate is reduced or the controller tolerates some grid energy. That reduction may be sensible when the car leaves in an hour; it may be foolish if the battery must sustain critical loads overnight. The best priority is situational and should respect manufacturer-approved battery reserve and charge rules.

A controller able to observe battery SoC is not necessarily able to enforce battery policy. Nor is requesting a particular battery mode the same as verifying that the inverter obeyed it. Log actual charge/discharge after every important mode change. A system that repeatedly drains the battery into the car and recharges it from the grid later can lose energy to extra conversions, even if its solar percentage looks impressive.

Installation costs: compare complete operating architectures over five years

For a British household, the economically useful comparison is often the incremental cost of adding the next controller to equipment already owned. A Home Assistant server used for lighting and heating does not need to be purchased again. A hybrid inverter may already include a usable grid meter. Conversely, buying a cheap controller that requires a £200 compatible meter and paid electrician time can cost more than a supported charger with native solar features. The figures below are illustrative planning scenarios, not live retailer quotations or promises of savings. Use them to create an installer and equipment shopping list, then replace each line with a firm price.

5-year incremental itemA: Keep inverter + charger nativeB: Add Home Assistant (existing host)C: Add evcc to compatible system
Extra host hardware£0£0 (already owned)£90
Extra compatible meter/gateway£0£120£160
Installation/configuration labour£0£120£180
Connectivity/backups/maintenance allowance£0£80£100
Feature sponsorship/licence assumption£0£0£0–£200 scenario range; verify
Five-year incremental total£0£320£530–£730

Scenario B assumes that a working Home Assistant host is already in place and adds modest metering and setup. Scenario C assumes a separate always-on host or appliance, an additional compatible meter and a deliberately hypothetical allowance for features that may require sponsorship; it does not state current evcc subscription pricing. An installation that already has the necessary site meter and host may cost substantially less. A site needing a new three-phase meter, enclosure and professional work can cost much more. The manufacturer’s app route is not truly free if a new proprietary gateway or paid vendor service is required; the £0 figure applies only when the needed functions already exist.

A transparent break-even calculation

If a new controller has an incremental five-year cost of £600, it needs to improve household outcomes by approximately £120 per year just to recover those costs over five years, ignoring finance, discounting and replacement risk. At a 20p/kWh effective cost difference between the expensive charging slot avoided and the cheaper slot used, that represents roughly 600 kWh/year shifted—but actual savings will differ because EV charging losses, solar export payments and battery interactions matter. At a mere 5p/kWh effective gain, the same £120/year requires 2,400 kWh shifted annually. A household that drives little will struggle to justify elaborate optimisation on EV charging savings alone.

Conversely, better scheduling can be worth more than simple energy savings when it prevents missed charging deadlines, provides manual visibility or makes an awkward installation usable. State that value explicitly rather than burying it in unsupported “up to 40% savings” language. To evaluate financial performance, compare with a baseline representing what the household would otherwise have done using the same weather, energy demand and tariff—not with a deliberately wasteful all-peak charging scenario unless that was the real starting point.

Case study 1: modest solar array, one EV, no battery

A homeowner has 4 kWp rooftop PV, an existing single-phase smart wallbox and a fixed electricity tariff. They are home most afternoons and can leave the car connected. The inverter app already shows production but not net grid exchange. The best first expenditure may be a supported site CT or meter so the charger’s native solar-surplus feature can see real export, assuming the particular charger supports that accessory and the installation is suitable. Buying a mini PCAliExpress price, configuring evcc, and then recreating the same charging mode may not improve the result.

Home Assistant becomes valuable if the owner also wants gas, water, temperature and appliance dashboards, or if the charger’s history is poor. If charging regularly misses departure requirements, a more capable optimisation layer might be justified. Test the existing wallbox’s delayed charging and charging-current interface first; if it performs adequately offline, keeping it as the single control owner saves integration work. Check whether the daily reported “solar EV charging” excludes any grid power imported below the meter’s update interval.

Case study 2: hybrid inverter, battery and two electric cars

Now consider a 7 kWp PV installation, 10 kWh of nominal battery capacity, two EVs with different departure deadlines and a three-phase connection. One vehicle is at home during the day, while the other returns late. The household needs accurate three-phase site metering, charger and vehicle compatibility checks, and a policy for battery reserves. This is the setting where dedicated charging optimisation can deliver meaningful convenience, although approved charger-native load management must still meet the electrical requirements.

The energy-management question is not “Which vehicle gets the most sun?” but “Which energy targets and deadlines can we meet while respecting site current, phase constraints and storage priorities?” For example, car A may need only 6 kWh by 18:00 and car B 20 kWh by 07:00. Shifting A to sunny hours and B to cheap overnight hours is plausible if the cars and EVSEs are controllable and the off-peak interval offers sufficient charging capacity. The inverter continues to protect the battery and grid connection. Home Assistant reports actual delivered energy and alert conditions; evcc or the supported EVSE scheduler owns the charging decisions.

Do not assume evcc automatically optimises all battery flows: its battery-control features are device dependent and may require specific external-control support. Likewise, do not assume an experimental software load-balancing feature meets installer-mandated requirements. Test simultaneous charging with other large household loads under professional supervision and ensure each circuit’s protective limit remains effective when the optimisation host is unplugged.

Case study 3: no EV, but a heat pump and immersion heater

A homeowner with a heat pump, hot-water cylinder and rooftop PV may have very little use for an EV-specialist platform. Their value comes from understanding the heat pump’s daily electricity input, water-heating energy, time-of-use prices, minimum temperature and hygiene requirements. Home Assistant can combine monitoring data and cautiously schedule approved discretionary loads. The heat pump’s native controller should retain weather compensation, compressor protection and domestic-hot-water safety. If the cylinder has a manufacturer-approved immersion diversion product, its power electronics and electrical protection should remain independent of the dashboard.

A flawed automation that repeatedly forces a heat pump to chase cheap slots using high flow temperatures may increase electricity consumption by reducing COP or creating cycling. A simple monitored schedule with good meter accounting is often preferable. For deeper planning, evaluate an optimiser such as EMHASS only after collecting reliable historical consumption, price and weather data; more sophisticated maths cannot repair inaccurate meters or a heat-pump interface that refuses needed commands.

Case study 4: inverter ecosystem already offers excellent native control

A fully integrated solar, battery and compatible charger ecosystem may provide adequate surplus charging, backup priorities, battery schedules and export limits through one vendor. Its app may also offer reliable support from the original installer. A third-party controller has to show an incremental benefit: independent household analytics, additional brands, better charging departure logic, more accurate tariff handling or data privacy. If none of those problems exists, staying with native features is a rational design choice, not a failure to embrace home automation.

Before choosing a vendor-only solution, ask what happens when the internet is lost, the account is transferred, the manufacturer discontinues a model or the homeowner changes EV brand. Request documentation on data export and local interfaces. Avoid a hardware purchase based solely on an attractive demonstration screenshot: test whether the app records actual grid import/export energy, whether it retains data across network outages, and whether monitoring works without an ongoing service fee.

Networking, security and service continuity

A local installation still has a network attack surface. Modbus TCP often has little intrinsic authentication; an unauthenticated write-capable interface should not be exposed beyond the trusted industrial or home automation segment. MQTT should use appropriately configured credentials and, where supported, transport security. A self-hosted dashboard should not be placed directly on the public internet. Prefer a supported encrypted remote-access service or properly maintained VPN and segregate critical plant interfaces from guest Wi-Fi and untrusted IoT devices. Apply vendor firmware updates deliberately, with a documented rollback plan where available.

Failure or attack scenarioSymptom the owner seesPreferred design response
Cloud vehicle API unavailableNo SoC updates, charging still possibleUse supported local EVSE energy and explicit departure fallback
HA host restarts during tariff slotMissing automation trigger or late startNative charger readiness plan where necessary; alarm on missed target
evcc host or MQTT broker failsNo optimisation/current updatesManufacturer-defined EVSE fallback and safe current limits
Inverter LAN link unavailablePV/battery telemetry staleNative BMS and inverter continue safe autonomous operation
Internet outageForecast, remote portal or dynamic prices staleDocumented local controls and tariff/default schedule
Grid meter freezesMisleading permanent “surplus”Freshness checks and stop speculative optimisation
Conflicting automation writesCharge starts and stops unexpectedlyOne command owner; disable duplicate schedules
Incorrect credentials or open ModbusUnauthorised access to setpointsNetwork isolation and limited write permissions

Define downtime behaviour before the integration goes live. One household may prefer the EVSE to stop discretionary charging when the controller fails; another may want a fixed low-rate charging schedule so the car is usable next morning. The safe and appropriate option depends on the charger, installation approval, expected commute and native controls. A robust system records its current mode clearly and makes manual charging possible without asking the homeowner to debug an MQTT topic at midnight.

A two-week acceptance test that turns features into evidence

A real-world pilot can disprove an incompatible product faster than hours of browsing. Use the first few days for read-only logging, with deliberate checks of every metering direction and power unit. Observe a cloudy day, a sunny day, normal overnight loads and a manual high-load event. Compare two or three representative charging sessions to charger records and the utility meter. Only then enable a supported optimiser in one-control-owner mode. Record software versions and screenshots of the configuration before testing any failure scenarios.

TestPass conditionWho should witness or approve
Site measurement boundaryGrid import/export agrees in sign and reasonable magnitude with known loadsOwner and qualified meter installer
Energy accounting for 24 hoursNo unexplained double counting; kWh counters monotonic or documented resetsOwner or commissioning technician
EV minimum currentCharger respects manufacturer minimum and pauses appropriatelyApproved charger installer as relevant
Battery reserve policyBattery never violates configured native lower reserve due to automationInverter installer where write control involved
Dynamic tariff timingScheduled slots match retailer periods including timezone/DSTOwner with billing data
Loss of internetCore safety and essential charging remain in defined safe modeOwner and installer as appropriate
Loss of software hostNo uncontrolled charging-current or grid-limit behaviourQualified installer where electrical limits involved
Manual overrideOverride is visible and has documented end stateHousehold user
Data retentionCharts and energy counters survive ordinary restartsOwner
Five-year cost evidenceHardware, subscriptions, maintenance and savings assumptions traceableOwner

For numerical evaluation, use three KPIs that cannot easily be manipulated by a flashy dashboard: import cost per delivered EV kWh using measured wallbox energy and aligned tariffs; missed departure targets; and unwanted grid import during solar-only mode subject to a documented tolerance and measurement latency. A site with a battery should also track unexpected battery discharge during charging. Do not use “percentage solar” as the single outcome: two platforms may define that percentage differently, and a high percentage can conceal reduced battery reserve or unnecessarily long charge times.

What to buy, in order, and what to defer

The purchase list is deliberately ordered by physical necessity, not by affiliate potential. A precise, compatible meter and a controllable EVSE usually matter more than another hub. If you already have a supported inverter meter, do not automatically add a duplicate CT set; determine whether the values can be read by the new optimiser and whether the sampling interval is adequate. On the other hand, if the inverter hides site export behind a five-minute cloud portal, a supported local meter may be justified for real-time charging control.

Buy now when missingOnly if requirement proves it is neededOften defer until the pilot
Qualified installation and verified site meteringDedicated local HA or evcc hostAdditional dashboard display
Manufacturer-approved EVSE and load protectionsCompatible charger gateway/OCPP optionExpensive high-frequency cloud data plan
Reliable local network at plant roomBattery write-control interface with documented supportCustom batteries/inverter register experimentation
Clear tariff and export-compensation dataHome Assistant server for multi-system visibilityForecast-optimisation solver
Documented safe manual charging modeSponsorship/licence for required evcc componentsSecond energy monitor with identical data

For related buying and configuration decisions, see our Home Assistant grid, solar and battery entity guide, EV charger meter and dynamic load-balancing comparison, and solar surplus EV charging integration guide. Their control and metering lessons complement this strategic software comparison. They do not make a generic smart-home server a replacement for approved electrical load management.

Frequently asked questions

Is evcc a replacement for Home Assistant?

Not generally. evcc specialises in charging and energy optimisation; Home Assistant covers a much broader smart-home environment. They can coexist if control ownership is clear.

Can I use Home Assistant without evcc?

Yes. Many installations use charger-native solar charging or Home Assistant automations. Dedicated EV optimisation may be preferable for complex tariffs or multiple chargers.

Do inverter apps work without internet?

The inverter normally continues its essential operating functions, but app access and some optional controls may depend on the cloud. Check the exact model and configuration.

Does evcc support every EV charger?

No. Confirm the exact device and required features in current compatibility documentation. A general protocol label is not sufficient.

Will Home Assistant prevent electrical overload?

Do not rely on it for protective load limitation. Use approved charger load management and electrical protection installed and commissioned correctly.

Can I prioritise charging the battery over the EV?

Often, if the relevant meter and battery states are available and the selected control supports that policy. Verify it with real-world tests.

Is solar surplus charging always cheapest?

Not necessarily. A very cheap overnight tariff may beat the opportunity cost of exporting solar, depending on import/export prices and battery losses.

What if I have a three-phase home?

Choose meters and chargers that explicitly support the phase arrangement and relevant limits. Confirm phase switching behaviour where offered.

Do I need a dedicated mini PC?

Not if a reliable existing Home Assistant host can run the required software and has sufficient resources. Assess reliability and backup needs.

Can evcc and Home Assistant both control the same charger?

Technically possible in some setups but generally a poor default. Use one owner for current and schedule commands to avoid conflicts.

Does a Modbus connection guarantee battery control?

No. Register availability and write permissions vary by model, firmware and region. Some interfaces are read-only.

How do I prove the system saves money?

Compare measured imports, exports and charging costs against a credible baseline while accounting for weather, tariffs and usage differences.

Final recommendation

For most mixed-brand smart homes, use Home Assistant as the visibility and household-automation layer; add evcc when EV charging needs dedicated optimisation; and leave certified inverter and charger safety functions with their native controllers. Buy compatible meters and reliable integrations before paying for another hub. The best energy-management system is the simplest one that meets your real requirements and continues behaving safely when a server, network or cloud service is unavailable.

Further reading and official documentation

See Home Assistant Energy management, the official integration directory, evcc documentation, and the evcc project. For an ESP32AliExpress price-based monitoring project, read our grid, solar and battery entity guide, solar surplus flexible-load guide and OpenTherm gateway guide. Manufacturer installation manuals remain authoritative for electrical safety, compatibility and warranty conditions.

CONTINUE EXPLORING / SMART HOME & ESPHOME

Read next

Practical guides related to this article.

Explore the topic →
HARDWARE DECISION GUIDEChoosing Home Assistant hardware?

Compare practical options before you choose hardware.

Compare options →