I recently replaced the ESP8266 wifi module with an ESP32 wifi module and flashed the latest controller firmware (D8.2.0) with the modifications shown below (limit max current to 15A due to issue with Gen 1 Nissan Leaf charger). The controller is now showing a “No Ground Fault” at boot up. The same issue has been reported before. This used to work fine with 5.0.1 controller firmware and 2.9.1 wifi firmware. I’ve double checked the wiring; ground is certainly there.
I had a quick look at the code and compared it with the 5.0.1 code. There are some minor changes for the ground fault detection… my gut feeling (also observing the fact that @dakaix had to flash the firmware twice) is that it might be an initialisation issue. I also flashed the firmware twice but unfortunately the firmware still thinks that there’s a ground fault while there is not.
I did a quick test and flashed the old 5.0.1 firmware on the controller and as expected no ground fault this time. In other words, changes to the controller firmware since 5.0.1 (for this “v5” hardware) must have introduced this issue.
The code is a bit hard to read for me with all the conditionals (as I don’t know whether these apply or not).
At line 798 the relays are being tested. I’m not sure how Relay1 == none and Relay2 == none is related to “open ground” or what “L2 both hot” means but clearly svcState can only become OG if both Relays are “none”. Both relays are “off” which means that both N and L on the car charger side are floating / not connected. If I recall correctly I did set the service level to 2 on 5.0.1 but do admit I never looked into what service level actually means. I’m in NZ, single phase 240VAC and need 15A max charge current
Any suggestions for further debugging are much appreciated.
Starting the controller shows the “No ground fault”.
So I guess it wasn’t that (but might still good to make this change: there are conditions in which RelayOff is not initialised purely from a code observation point of view (ie. regardless if real world scenarios would never leave RelayOff uninitialised).
Changed the service level from Auto to 2 and power cycled the unit.
Display shows “GFCI Fault” (that however does not show up in the web interface). Controller proceeds as usual.
Rebooted the ESP32 from the web interface.
Display shows “GFCI Fault”. Controller proceeds as usual.
Rebooted the controller from the web interface.
Display shows “Safety Error”, “Self Test Failure” (controller stuck in this state).
Powercycled the unit.
Display shows GFCI Fault and then proceeds as normal.
Changed service level to 1 and power cycled the unit.
No more faults are shown. Car is away so can’t test whether it would start charging.
Changed service level to 2 and power cycled the unit.
Display shows GFCI Fault.
Changed service level to Auto and power cycled the unit.
Display shows “No Ground fault”.
Changed service level to 2 and power cycled the unit.
Display shows GFCI Fault but very briefly.
Changed max current to 15A and power cycled the unit.
Display shows GFCI Fault but very briefly.
Changed service level to 1 and max current to 15A and power cycled the unit.
Display shows GFCI Fault for a few seconds.
Is this observed behaviour to be expected or indicative of - I’m guessing here - something not right with initialisation?
I think it’s “v5” … at least that’s according to the documentation I stored when I bought them in 2019.
Is there a way to find out? Does the photo (above) help? The description on the invoice is saying “Advanced Series - 48A/40A/32A Kit”.
I also note that the error counts in the webinterface are all 0…?
I see that the software should detect if the board is v5.5 or v5
“Added GPIO pin pulled HIGH to auto detect board version in software to automatically set new/old pin values without requiring different firmware”
@glyn.hudson Many thanks for addressing these issues (auto detect board version) and increasing overcurrent issue. I was about to fix the overcurrent issue as our Gen 1 Leaf is one of those too-slow cars. Will give D8.2.0 a go soon.