There was no one root cause but a combination of issues. I will explain here so we can all learn something.
First of all, the fire was started by the heater which is designed like this: It uses the heater core from a cheap hardware store heater blower and a single 1200V IGBT to switch it on and off. The integrated over temperature switch can not be used as is because it would just arc in case of opening. Instead it is wired to turn off the IGBT. The IGBT is turned on by a DC-DC converter. The DC-DC converter only turns on when
a) The main DC-switch is closed
b) The fan is turned on
c) The key is NOT in start position
So it seems there are plenty of safety measures in place. Well, read on.
I lent the car to a friend and after a few weeks he had issues charging the battery. Maybe just a bad comm interconnect. So he decided to turn on the ignition key which indeed will bridge the BMS and charging commences. Forever. They over charged and then looked like this: They had swollen so badly that they cracked the wooden battery box. Amazingly they still worked and I escorted him 15 km back to my home. I just left it sitting there for a few weeks until I noticed the cells had de-swollen. The BMS showed a pretty high SoC even after all that time.
So next I attempted a recharge and even that worked, only thing I did notice was the inverter showed "battery overvoltage" which means 530V (500V idle). I wasn't really surprised as it was quite cold. I quit charging.
The next day I decided to continue the charging session but this time didn't sit in the car. Well, I better had. Only minutes later my wife complained that her laptop had lost wifi connection. Cause: GFCI trip.
Another minute later she saw smoke gliding past our front window. Oh, bitter taste. I look out the side window to find flames coming out the rear grill (i.e. the one in front of the wind shield). Rushed down, took the fire extinguisher and put an end to that. Well too late, flames had burned their way inside and destroyed it. Wind shield cracked, multiple wiring looms destroyed.
So, I can only speculate what might have happened:
a) a cell interconnect or the inner electrode connection of a cell had come loose because of the bulging
b) The current from the boost mode charger had nowhere to go
c) So the voltage must have risen above the 1200V breakdown voltage of the heater IGBT
d) IGBT failed SHORTED (they usually do)
e) All the energy went into the heater core with no fan running to cool it
f) fire
So there were 3 causes to that incident:
a) the swollen cells caused an interconnect fail
b) The boost mode charger outputted a silly high voltage
c) The single IGBT that stops current from going into the heater core failed
So what do we conclude?
- Do not trust a single IGBT, use a DC rated switch instead or in addition.
- Also make sure the output voltage of the charger can't reach stupid levels. Which is hard because of the heavy low pass filtering. Anyway, I will make sure the charger obeys udcmax (something arber requested a long time ago but I always said it's the BMSes job)
- Use PTC heaters
- Reverse safety: wire the fan to turn on when the heater turns on