Zappi smart charging

Share on:

With the emergence of dynamic ‘time of use’ electricity tariffs like Octopus Agile - where the unit price you pay every half hour is tied to wholesale prices and varies throughout the day - there’s the opportunity to charge power hungry devices like electric cars to take advantage of really cheap (and greener!) electricity rates. Under 5p/kWh often, which equates to the under 1p/mile bargain prices.

TLDR: The Zappi charger can be made smarter with a Sonoff smart switch to trigger charging on a programmable schedule.

If you find this guide helpful, please use my referral link to Switch to Octopus and we’ll both get £50.

Agile variable prices

For dumb devices like dishwashers and washing machines most have countdown timers that can be set to start on the best slot, so they’re simple to optimise. An electric car is more complicated - it’ll likely be charging for a number of hours, overnight (when rates are generally lowest). Because the best slots are often not contiguous and scattered throughout the night you need the car or charger to start and stop the charge sessions at the right points in time. Ideally automatically given you’ll be asleep!

Most electric cars only have basic timer functionality so can’t cater to this more complex charging schedule (and also it’d be a pain to have to get in the car to reprogram timers), so I looked towards what could be automated at the charger instead. My electric charger is a Zappi - it’s a pretty smart charger and has more complex timer schedules but again it would be a pain to have to go outside and reprogram to the new schedule each day. You can also add a Hub from Zappi into the picture to network the device to the ‘cloud’, but that’s more complexity than I’d like and depends on external cloud services and an internet connection to function.

An idea I stumbled upon referred to in the Zappi manual is the ‘eSense input’. It’s intended to be connected to a switched output of Economy 7 meters which exists to switch over contactors on night storage heaters to run a night rate when the meter time is on the low rate. The Zappi supports ‘boosting’ the charge when this input is energised so this looked like an option to put a smart switch across and be able to add smart charging capabilities.

One smart switch I’ve favoured for my home automation is the ubiquitous Sonoff switch running Tasmota firmware. I’ve written about them in the past a bit - they’re cheap, easy to customise and have proven very reliable. They also don’t need to be cloud connected, so it means I can maintain control of them within my local network.

Zappi with a Sonoff on the eSense input

So I wired this switch in the eSense input, powering the input side from the same live/neutral feed going into the Zappi (left of picture) and the output side going to the eSense inputs (right of picture). The Sonoff itself is the white box that fits easily inside the Zappi casing, keeping it weatherproof. As the Wifi range tends to be pretty decent on Sonoffs it could reach my wifi network fine from the external wall where the Zappi is mounted.

Tasmota has an easy web interface to program timers (pictured below), so you could just do it manually from a web browser each day. Ultimately I wanted to fully automate this so looked for an api. Sure enough, Tasmota has a very simple HTTP API you can send commmands to to set the timers. A bit of hacking later and I had a script I can run once a day, that takes as an input how long to charge for and figures out from the Octopus pricing API the best slots, then sends this off as a timer program to the Sonoff.

Tasmota timers

The last point is you need to set the Zappi to the ‘Eco+’ mode for the boost input to function. Also the version of the firmware on my Zappi was kinda old and contained a bug - when the eSense input was live it was indicated (little ‘e’ on the display), but it wasn’t actually boosting the input. A quick look through release notes for newer firmwares revealed this was a known issue. I dropped MyEnergi support an email and they very helpfully sent me out a ‘loan’ Hub in order to update my Zappi’s firmware, which fixed the problem and eSense works now.

eSense input on

Finally, if you’ve found this guide helpful, please do use my referral link to Switch to Octopus and we’ll both get £50.