Inverter: FoxESS H1 H3 AC1 KH - dalathegreat/Battery-Emulator GitHub Wiki

[!CAUTION] Working with high voltage is dangerous. Always follow local laws and regulations regarding high voltage work. If you are unsure about the rules in your country, consult a licensed electrician for more information.

⚠️ Word of caution, CAN overvoltage ⚠️

FoxESS inverters can have high voltage potential on the CAN chip. They can be 110V when measuring between CAN and PE. It can burn up your Battery-Emulator CAN chips if there is a path to protective earth. This becomes a problem if the board you are using has GND on the same plane as PE. Then the 110V diff might leak over and damage the chips. A way to avoid this is to use a PSU to power the Battery-Emulator board that is not connected to PE. For instance a 2-prong phone charger would effectively be isolated from PE.

image

Another way to tackle this is with the use of a CAN isolator between the inverter and the rest of the system. Examples found in the lightning strike wiki

image

Word of caution, isolated CAN

[!IMPORTANT]
This inverter does not handle a CAN connected EV battery on the same channel. If the inverter which likes to see only extended CAN frames sees standard automotive CAN frames, the inverter will enter a fault state.

This can be solved in a few ways:

Compatible FoxESS inverters

  • FoxESS H1
    • Use FOXESS_CAN primarily.
    • Can also use SOLAX_CAN protocol, but some values will be wrong
  • FoxESS H3
    • Uses FOXESS_CAN protocol
  • FoxESS AC1
    • Uses SOLAX_CAN protocol
  • FoxESS KH
    • Works with both SOLAX_CAN and FOXESS_CAN protocols

Communication wiring

The FoxESS inverter works via CAN. Connect the Inverter side Pin 4 & 5 to the Battery-Emulator

image

Compiling the software for FoxESS inverters

Make sure that the settings in the "USER_SETTINGS.h" file are correct. Depending on which inverter model you use, select either the Solax or the Foxess protocol.

#define SOLAX_CAN //Enable this line to emulate a "SolaX Triple Power LFP" over CAN bus

#define FOXESS_CAN //Enable this line to emulate a "HV2600/ECS4100 battery" over CAN bus

Next step is then to select the battery that you intend to use, for instance if you use LEAF battery, make sure the following line is uncommented:

#define BATTERY_TYPE_LEAF // See NISSAN-LEAF-BATTERY.h for more LEAF battery settings

After setting this up, flash the board.

Troubleshooting

Problem Possible fix
Inverter stuck in "Waiting..." Check that high voltage is present on inverter terminals, and that polarity is right way
Event CAN_INVERTER_MISSING active Check that can_config is set properly for .inverter . It also might be a good idea to restart the inverter itself. It sometimes does not recover the startup routine if you have disconnected wires on the fly
Inverter switched off ‘long press to activate’ on the inverter screen

Installation examples

Feel free to add your own images here!

Video Guide

To aid installation Battery Man has produced a video series using the H3 Pro inverter which documents an install with Tesla LFP batteries and both the LilyGo and Stark CMR. There is a full playlist touching on different aspects thumb for YT opt 7 FINAL Installing inverter - https://youtu.be/9YnuPMdJaoI?si=odCptB7YAE56yFHq THUMB HACK V3 Work to add inverter integration - https://youtu.be/BYqYpsv5svQ?si=oxXq-E-KLXL0grea https://youtu.be/PYyTD87KQpo?si=jaSvQWiqEct-WYPS