Solar-surplus EV charging

Charge your cars on sunshine.

Sunplug watches what your panels are producing and what your house is using, then charges your cars with whatever is left over — following the sun through cloud and shade, minute by minute, so you buy less electricity and export less of your own.

Free while in beta.

The Sunplug dashboard showing live energy flow between solar, grid, battery, home and two cars
Built for Tesla, works with any car Either directly via the Tesla API or any wallbox talking OCPP.
Two cars at once Not one at a time. Both, sharing the surplus.
Almost any Solar Provider Direct API access when available and secure or via the Sunplug Agent and push API
Worldwide Wherever your sun is. I intend to support most locations (work in progress)

ChargeHQ is closing on 7 September 2026.

I was a customer too. When the shutdown was announced I looked at what I would lose — and at the one thing it never did for me.

It could only manage one car. I have two, and every sunny afternoon meant choosing which one got the surplus, or babysitting the app. So I built the replacement I wanted: everything ChargeHQ did well, plus the part it did not do at all.

  • Solar-surplus tracking that follows cloud cover, not a fixed rate
  • Battery-first or cars-first priority, with a reserve you set
  • Scheduled off-peak top-ups and time-of-use tariffs
  • The push API, so any bridge you already wrote keeps working
  • Both cars, simultaneously, sharing one supply limit

Coming from ChargeHQ? Tell me what you were running and I will make sure it is supported before you need it.

How it works

1

Connect your solar

Sign in with your inverter's maker, or run a small agent on your own network for readings every thirty seconds instead of every five minutes. If your brand is not listed, send the numbers yourself — there is a documented API and it takes an afternoon. It is also backward compatible with the ChargeHQ push API.

2

Connect your cars

Tesla through the Tesla Fleet API directly, all handled seamlessly and securely in the app. Everything else through the wallbox using OCPP, which nearly every serious charger speaks — so the make of your car stops mattering.

3

Set what you want

A floor to reach overnight, a target for the sun to chase, and how much home battery to keep back. Then leave it alone. Boost when you are in a hurry; set a departure time when you are not. (Some features are only available with Tesla currently).

Tesla owners

Your Tesla needs nothing but the app.

Sunplug talks to your car directly, so there is no wallbox to configure and nothing to install in the garage. It sets the charging current amp by amp as the sun changes, and because it can see the battery it knows when to stop.

It knows the state of charge

Charge to 80% on sun and no further, but keep a floor of 45% for the morning. Sunplug tops up overnight only if the sun did not get there.

Both cars, one supply

Two Teslas share whatever surplus there is, inside the limit your wiring allows. Give one priority, or split it evenly.

Leaving at seven?

Set a departure time and a target. Sunplug works backwards and starts only as late as it needs to, using sun first and cheap hours after.

It stays in charge

Change the rate in the Tesla app and Sunplug notices, backs off, and tells you — rather than silently fighting you over the same setting.

Two Tesla cards side by side, each with a state of charge bar, a slider setting the overnight floor and the solar target, and buttons for boost, trip and pause

One slider per car: the blue stretch is what the grid guarantees overnight, the amber is how much further the sun may take it.

Every model, including the ones other tools dropped. Model 3, Model Y, and both Model S and Model X — pre-refresh cars included. Those older S and X use Tesla's legacy command path rather than the signed commands newer cars need, and Sunplug speaks both. Mine is a 2020 X, which is rather how I noticed.

Not a Tesla? Everything above except the state of charge works through your wallbox instead, whatever you drive.

Sun when there is sun. Off-peak when there is not.

A cloud passes and the surplus drops. Sunplug eases the charge rate down rather than stopping, waits to see whether the sun comes back, and only gives up when it is clear it has gone. When it returns, it ramps back up.

That waiting is deliberate. Every stop and start cycles a mechanical contactor inside your charger, and those have a finite life. Chasing every dip would cost you a wallbox to save a few pennies of electricity.

Some days the sun simply does not show, and you still need the car in the morning. Set charge windows for your cheap hours and a floor to reach by dawn, and Sunplug fills the gap from the grid — on a Tempo red day, at a peak rate you would rather avoid, it can be told not to bother.

Live energy flow diagram with power moving from solar to the house, battery and cars

You can see exactly what it did.

Every decision the engine makes is recorded with the reason for it. How much of your charging came from the sun rather than the grid, what it saved against charging off-peak instead, and where the energy actually went — day, month or year.

The savings figure is deliberately conservative: it compares against what you would have paid charging overnight at your off-peak rate, not against peak. Less impressive, more honest.

Analytics screen showing self-sufficiency, costs and charging energy over time

The Sunplug agent

Read your own hardware, not a summary of it.

Most services can only ask your inverter's manufacturer what happened. That answer is five to fifteen minutes old, because that is how often the inverter uploads. You cannot follow a cloud edge with it.

Run the agent on anything that stays switched on — a NAS, a Raspberry Pi, your Home Assistant box — and Sunplug reads the hardware itself, every thirty seconds.

A reading every 30 seconds The difference between following the sun and reacting to it long after it moved.
It finds your kit Scans your network and tells you what it found. Most people do not know their inverter's address, and now they do not need to.
Nothing is exposed It makes outbound requests only. No port to open on your router, and no credentials for your equipment ever leave the house.
One command, or two clicks A Docker image for anything, a Home Assistant add-on — or send the data yourself to the push API (same JSON format as ChargeHQ). The agent pairs with a six-character code; there is no key to copy around.

Optional. Sunplug works from your manufacturer's cloud too — the agent is for when you want it to work properly.

Does it work with your kit?

Solar

Reading production, house use and battery.

  • Enphase — locally, every thirty seconds
  • Fronius — locally or Solar.web
  • Sungrow — one-click sign-in
  • SolarEdge
  • SolaX
  • GoodWe
  • Home Assistant — covers almost anything
  • Shelly meters — pairs with any inverter
  • Anything else — send your own readings

Cars & chargers

Setting the rate, not just switching on and off.

  • Tesla — directly via the Fleet API, including state of charge
  • Wallbox
  • Zaptec
  • go-e — locally, no account
  • ABB, Alfen, Keba, Vestel
  • Any OCPP 1.6 wallbox — and so any car

Controlling the charger rather than the car is why the make of your car does not matter. The limit is applied at the socket.

Setup guides for each of these — what you need, how long it takes, and what usually goes wrong. Not sure? Ask me and I will tell you honestly whether yours works today.

Get early access

Sunplug is in beta and free while it is. I am looking for people with solar and an EV who are willing to tell me when something is wrong.

ChargeHQ customers first. If you are losing a working setup in September, you go to the front of the queue.

I will reply and tell you plainly whether your setup works today or what would need building. Your details are used for that and nothing else.