Hi all, just sharing my recent experience working with a Growatt SPF 3500 ES and the included WiFi-F module. I have a few other solar systems already feeding their data into InfluxDB and Grafana, and wanted the new Growatt unit to do the same.
Otti’s project on GitHub provided some inspiration, however the newer generation Wifi-F module proved to be a challenge to interface with. I spent quite a while trying to communicate with the ESP8266 using a few different serial adaptors (Silicon Labs, FTDI and CH340), however all attempts were failing very quickly with various serial communication errors.
In the end I found that the SIPEX SP3232EE RS-232 transceiver on the rear of the PCB, which is also connected to the RX and TX pins of the ESP8266 was the culprit. As a workaround I tried interfacing with the SIPEX chip’s own RX and TX pins, however this didn’t work. The only solution I could find was to remove the chip from the board temporarily while I uploaded new firmware.
Once the SP3232 chip is removed, the ESP8266 is easy to work with. All the necessary pins (GND, TX, RX and GPIO-0) are broken out to a standard 0.1” through holes that a pin header can be soldered to. The chip can be placed in flash mode by shorting GPIO-0 to ground while it's reset.
I included OTA components in my firmware so any future updates could be done without a serial interface, then re-soldered the chip. From here everything worked perfectly.
Another note is that the board seems to be quite power hungry, I had it running from a good quality USB power bank, however it would reset itself during firmware updates. Powering it from a higher voltage source solved this issue. It has an onboard buck converter, so it's happy to accept well over 5v.
The end result was the Growatt reporting all its statistics into InfluxDB and Grafana, screenshots are attached. I’d be happy to upload my code to Github if anyone is interested.
I’ve also attached photos of the WiFi-F unit and each side of its PCB.
Edit 30/09/2022:
Code and updated instructions posted to GitHub. It's possible to upload the new firmware without cutting traces or removing the SP3232 chip by using a Silicon Labs CP2102 USB to UART adaptor. These are unique in that they have strong enough drivers to overcome the impedance of the SP3232 while it's in place.
Otti’s project on GitHub provided some inspiration, however the newer generation Wifi-F module proved to be a challenge to interface with. I spent quite a while trying to communicate with the ESP8266 using a few different serial adaptors (Silicon Labs, FTDI and CH340), however all attempts were failing very quickly with various serial communication errors.
In the end I found that the SIPEX SP3232EE RS-232 transceiver on the rear of the PCB, which is also connected to the RX and TX pins of the ESP8266 was the culprit. As a workaround I tried interfacing with the SIPEX chip’s own RX and TX pins, however this didn’t work. The only solution I could find was to remove the chip from the board temporarily while I uploaded new firmware.
Once the SP3232 chip is removed, the ESP8266 is easy to work with. All the necessary pins (GND, TX, RX and GPIO-0) are broken out to a standard 0.1” through holes that a pin header can be soldered to. The chip can be placed in flash mode by shorting GPIO-0 to ground while it's reset.
I included OTA components in my firmware so any future updates could be done without a serial interface, then re-soldered the chip. From here everything worked perfectly.
Another note is that the board seems to be quite power hungry, I had it running from a good quality USB power bank, however it would reset itself during firmware updates. Powering it from a higher voltage source solved this issue. It has an onboard buck converter, so it's happy to accept well over 5v.
The end result was the Growatt reporting all its statistics into InfluxDB and Grafana, screenshots are attached. I’d be happy to upload my code to Github if anyone is interested.
I’ve also attached photos of the WiFi-F unit and each side of its PCB.
Edit 30/09/2022:
Code and updated instructions posted to GitHub. It's possible to upload the new firmware without cutting traces or removing the SP3232 chip by using a Silicon Labs CP2102 USB to UART adaptor. These are unique in that they have strong enough drivers to overcome the impedance of the SP3232 while it's in place.
GitHub - octal-ip/ESP07_Growatt_SPF_3500-5000_ES_Monitor: A custom firmware for the WiFi-F modules included with Growatt off-grid inverters
A custom firmware for the WiFi-F modules included with Growatt off-grid inverters - octal-ip/ESP07_Growatt_SPF_3500-5000_ES_Monitor
github.com
Attachments
Last edited: