-
Notifications
You must be signed in to change notification settings - Fork 241
Inverter: Sungrow
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. DC ARC is a REAL THING - ENSURE NO LOAD is on any DC wires before working on the system.
- Sungrow SH5.0/6.0/8.0/10RT: ✅ (BYD_CAN)
- Sungrow SH3.0/3.6/4.0/5.0/6.0RS: ✅ (BYD_CAN)
- Sungrow SH3.0/3.6/4.0/5.0/6.0RS: Australia No BYD support, (SUNGROW_CAN is under development)
- SH5.0RS AU on old inverter software works on BYD_CAN
- Sungrow SH8.0RS/SH10RS, SH15T-25T: Australia No BYD support, (SUNGROW_CAN is under development)
- Sungrow SH15/20/25T: ✅ (BYD_CAN)
Note: In some countried support for BYD is officially dropped, for instance in the new SH15T, SH20T and SH25T. Sungrow wants to promote their own battery system. In some countries it's rumored to even be dropped in the SHxRT models. You can use older firmware for your inverter to get it working, OR if you have a model that cannot use BYD_CAN, try to use SUNGROW_CAN to emulate a Sungrow SBR064 battery instead. As of June 2024, Australia has officially dropped all support for batteries other than Sungrow: https://service.sungrowpower.com.au/TI_20210824_Approved%20battery%20declaration%20for%20sungrow%20hybrid%20inverters_V16_EN-1.pdf
SUNGROW_CAN is currently under testing, as of Dec 2024.
Note
It is recommended to have the Sungrow on a dedicated CAN channel for maximum safety and stability
The Sungrow inverter works via CAN. The LilyGo board can have both a CAN battery and a CAN inverter connected on the same pins. When the board is used with two CAN devices at the same time that have termination resistors in all ends, the terminating resistor needs to be removed from the board. Please measure CAN termination if you have issues. This is explained in CAN-troubleshooting
ℹ️ Always check the termination resistance of the system! That way you know if resistor needs to be removed or not.
ℹ️ Grounding is extremely important. Make sure the battery case is connected to protective earth, and the shield part of the twisted pair CAN is connected to PE also! Failing to do this will result in CAN errors.
If the inverter CAN wiring is correct and with the inverter on, you should see a voltage of over 1V (eg 1.38V) - wires plugged into the inverter only.
Some Sungrow inverters seem to have CAN communication issues when the battery and inverter are on the same LilyGo (known issue with SH5.0RS and Leaf battery). To resolve this, you can do either of the following:
- You can add an isolated MCP2515 CAN channel
- You can add an isolated MCP2518 CANFD channel, and run it in classic CAN mode
- You can use the Stark CMR hardware
- You can use a CAN filter between inverter and the rest of the system
Caution
If you are using only a single CAN channel, Sungrow has a nasty software bug. Incase the LilyGo board is disconnected while the system is running (wire break or hardware failure), the inverter will still charge/discharge the battery! This is because the Sungrow inverter sees the automotive CAN messages as the system still being alive. This can lead to a dangerous situation where the battery is over/under-charged. This can be avoided by using a dedicated CAN channel for the inverter.
Sungrow Inverters have the wiring diagram on the side of the Inverter, check this, some are different. As at 2024, the inverter wiring diagram for an 'SHxxRS' Inverter is:
Note: Sungrow inverters also have an inbuilt FUSE on the battery terminals. CHeck the data Spec sheet:
SH3.0_3.6_4.0_5.0_6.0RS
Make sure that the settings in the "USER_SETTINGS.h" file are correct. The line:
#define BYD_CAN //Enable this line to emulate a "BYD Battery-Box Premium HVS" over CAN Bus
Needs to be uncommented for the software to emulate the BYD protocol over CAN. 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!
ℹ️ If you want to limit export power into the grid (feed-in) you will need to use Sungrow Smartmeter.
It is needed so that the system can measure consumption and generation.
Sungrow Smart Meter model "DTSU666" that comes with the SH10RT is compatible.
Adjust the parameters in Winet-S local web interface through web browser, iSolarCloud app or isolarcloud.com
Settings at Winet-S local web interface
Settings at isolarcloud.com
Note, it takes 10-15minutes for the icloud software to update the details for the Inverter.
When turning the system on, follow this startup procedure. Work quick, to avoid the inverter getting stuck in battery not detected mode.
- First start the Sungrow inverter via AC switch
- Turn on the Solar DC switch
- Turn on the Battery DC switch
- Start the LEAF battery BMS with 12V
- Start the LilyGo hardware with 5V
- Then either handle precharge/contactor closing manually or let the LilyGo hardware handle it automatically
- Turn off the LEAF BMS, cut the 12V supply to it. Wait 60seconds
- LilyGo status LED will turn red. The Sungrow inverter will within 30seconds stop using the battery.
- After 30s has passed, turn off the contactors incase the LilyGo isn't setup to automatically handle them
- Turn off the Sungrow inverter via AC switch
- Turn off the Battery DC switch
- Turn off the Solar DC switch
Also, the sungrow is a bit finnicky with startup timing, For me the following works everytime 100% : From everything down, startup the complete system, inverter, then battery emulator and then battery (in short order). As soon as the emulator complains about missing inverter, reboot the emulator. Do this 2 or 3 times, and eventually the inverter checks and emulator checks will run in sync and they will happily talk to eachother and continue to do so
User note on Firmware: Just updated my SH10RT from SAPPHIRE-H 03011.95.01 to .95.07 and had no data. After a downgrade to 95.01 all data came back.
Important Note for SH10RT(AU) Inverter Users:
You may experience unusual behavior even if all connections are correctly made. Common issues include:
- Error codes 714 and 703 appearing in the iSolarCloud app
- An "Inverter_missing" message on the LilyGO BMS interface
If you encounter these errors, clear any faults, error codes, and battery emulator events, then wait a short while for the system to complete the automatic handshake. This should restore normal communication and operation.
Successfully tested with:
- BYD CAN protocol
- Battery Emulator firmware version 8.0
- LCD firmware:
- MDSP firmware:
Hardware configuration:
- RJXZS BMS → CAN NATIVE (LilyGO) → Battery Emulator → MCP2515 CAN module (with J1 header jumped) → inverter using PIN5 and PIN7