ABB Terra AC charger wireless Modbus

I built an ESP32-based Modbus RTU slave that emulates the ABB EV3 electricity meter. It feeds the Terra AC wallbox with live phase data pulled from Home Assistant (e.g., HomeWizard P1), so the charger’s Smart Charging / Dynamic Load Balancing works without a physical EV3—and without running a long RS-485 cable from the main panel to the garage.

What it does

  • Presents the following EV3-compatible registers on Modbus RTU (slave ID 0x01 by default):
    • Energy import/export: 0x5000..0x5003 and 0x5004..0x5007 (U_QWORD, ×0.01 kWh)
    • Voltages L1/L2/L3: 0x5B00/02/04 (U_DWORD, ×0.1 V)
    • Currents L1/L2/L3: 0x5B0C/0E/10 (U_DWORD, ×0.01 A)
    • Active power Total/L1/L2/L3: 0x5B14/16/18/1A (S_DWORD, ×0.01 W)
    • Power factor Total/L1/L2/L3: 0x5B3A/3B/3C/3D (U_WORD, ×0.001)
  • Pulls values from Home Assistant entities (P1 import/export, per-phase voltage/current/power).
  • Implements Modbus server on ESPHome with clean register lambdas and logging.
  • Optional UART hex sniffer logs for bring-up/debug.
  • Runs on Lolin32 Lite (ESP32), powered by the Terra AC 3.3 V JTAG header (no extra PSU).
2 Likes

In Slovenija we have powermeters outside locked by power company. Will this software compatible with other esp tasmota pzem power meters on main house lines?

@Thinko It sure is. You just need to change the sources according to your sensors from Home Assistant

Example:

# ---------- Home Assistant sources (your entities) ----------
sensor:
   - platform: homeassistant
     id: p1_power_l1
     entity_id: sensor.p1_meter_power_phase_1

Hello,

This solution looks great.
I am trying to set it up, but facing with some problems.
Somehow the RS485 communication fails, I tried different settings, replaced the cable, but the ABB charger runs to failure instantly after it sends the first read request. It repeats the request every minute. The charger trying to read a single register 0x5B02. I don’t really have a clue how to troubleshoot this issue.
Did you have any similar issues like this?
Thanks.

I have rs485 tcp dongle and works great.
go to this post and read and use the ABB integration:

Yes I did. Some of the RS485 dongles seem to be poor quality and does not work great. What module are you using?

Check that your RX/TX leds are flashing when charger tries to read.
Some of my dongles the RX/TX led was dim and with working ones they were bright and solid. I was also using a breadboard and it was giving a poor connection, when I soldered the wires they were working ok.

Try to change polarity of the RX and TX GPIO’s if that is the case.