I’ve developed a custom integration for ABB Terra AC EV chargers that communicates via Modbus TCP.
It provides local monitoring and control directly in Home Assistant.
Features
Sensors: Charging state, error code, cable lock state, active power, delivered energy, and per-phase current/voltage (L1, L2, L3).
Switches: Start/stop charging and lock/unlock cable.
Number entities: Adjustable charging current limit (Amps) + fallback current limit.
Notes
Works only over Modbus TCP (not Modbus RTU/RS485).
The charger supports only one active Modbus TCP session – make sure no other app/tool is connected at the same time.
It should work in parallel with the original ABB phone app. I can start charging using the integration and stop with the app, or start with the app and stop with the integration.
ABB chargers support communication via OCPP and Modbus, but with certain limitations.
OCPP
Only one OCPP connection can be active at a time.
By default, this connection points to the ABB servers, which enables the original ABB mobile application.
Alternatively, the OCPP connection can be redirected to a custom OCPP server (e.g., Home Assistant). In this case, the ABB mobile application will no longer function.
Modbus TCP
Only one active Modbus connection is supported.
When Modbus is enabled, the ABB mobile application can still operate in parallel, while Home Assistant communicates via Modbus.
Works only over LAN
Important Limitation
When the charger is configured to use Modbus TCP, the LAN port cannot be used for OCPP communication.
To enable both communication protocols as described above:
The modbus over tcp dont work on devices without lcd screen.
Will this integration still work over tcp/modbus modul from rs485 ports. Need to try this.
Just released v0.1.1
This is a small update that refines the behavior of the Start/Stop Charging switch to make it more reliable and intuitive.
Refined Switch Logic: The switch will now show the ON state if the charger is in an active session, which includes the states “EV Ready for charge” (C1), “Charging Complete” (B2), and actively “Charging” (C2). This prevents the switch from incorrectly turning off in the UI during transitional charging states.
Improved Automation Compatibility: This change ensures that automations relying on the switch’s state see a consistent “ON” value throughout the entire active charging session, from the moment the car is ready until the session is manually stopped or the car is unplugged.
There were many questions how to configure connection on charger.
Ensure the wallbox is powered off or isolated for safety before making configuration changes.
Identify the Ethernet (RJ45) “Primary Ethernet connection” port on the charger; this is used for Modbus TCP/IP.
Connect the Ethernet cable from your network (or local controller) to this RJ45 port. Note: When using Modbus TCP/IP, the Ethernet port is dedicated to Modbus communication and not general internet access. ABB_Terra_AC_Charger_ModbusCommunication_v1.11.pdf?x-sign=HJla3Orlo07UQ7lw487O1bnrlv63uNlfbjg2sDY4Dn4AhY2ElQSXVpbNExrnIyGF&utm_source=chatgpt.com)
Confirm you have network connectivity (IP, gateway) and that your controller is reachable.
Launch the TerraConfig mobile app (make sure the version is compatible, e.g., v 1.6 or higher).
When configuring integration you have to connect to IP you selectet there.
Note: When Modbus TCP/IP is active, the Ethernet port becomes dedicated to Modbus communication, and you cannot use it simultaneously for e.g., ChargerSync™ internet connectivity.
Save / Apply the settings and allow the charger to reboot or re-initialise the interface.
I’ve just published my first EV Load Management blueprint for Home Assistant.
It works with the ABB Terra AC Modbus integration and dynamically adjusts charging current based on house power and tariff block (meant for Slovenian tariff blocks).
Hi. First of all, thanks for excellent job, I’m about to test it using my ABB Terra AC TAC-W11-G5 charger, but since I don’t have the ethernet cable available at my CarPort, I would like to use WiFi, so my question is - how do you know ABB Terra AC chargers do not support Modbus over wifi?
Do you think it will work if i will use some ethernet to wifi bridge device?
I’ve noticed that OCPP works over Wifi, do you think it is possible to dynamically change the charging current over OCPP? (not sure if any changes require reboot or charging session stop/start)
Official documentation says: Ethernet conne ction (B) is present to facilitate
the Modbus TCP/IP connection.
This option is available for display and UL variants of the TACWB family.
Other topologies might need to use Modbus TCP/IP. In the figure below, it is shown how the ethernet connection for Modbus TCP/IP can be established (on the Terra AC charger). Please note that in this configuration, the LAN/ethernet port is used for Modbus TCP/IP communication. It is therefore not possible to use this port for internet communication anymore.
In your case I would try using wifi to ethernet adapter.
Wifi to rs485 converter should also work but there is much bigger chance for error (you have to correctly configure converter connection protocol to read and write on charging station)
With released v0.1.2
I updated the integration to automatically set falback limit to 6 after restart.
There is knovn error with charger which sests fallback limit to 255 after every restart of the charger. Integration now sets fallback limit to 6A automatically if it detects value greater than 32.
I can confirm, RS482 Modbus to WiFi converter works as expected. I was able to establish modbus communication between HA and ABB Terra AC charger over WiFi.
Did not try to use ethernet to WiFI bridge, but I guess it should work as well.