Recently someone on the EV list asked if I have my “ears on”. I think it was Lee Hart, the best EV list contributor of all time since I started reading the list around 1994.
Yes, I do occasionally see posts from the EV list if they mention my name due to some automatic filters, but I am not subscribed and so cannot write back to the list. I’ve been a bit too busy with production lately to deal with the large volume of EV list email.
To address the question about multiple processors:
The Zilla and Hairball each have one PIC processor with hardware watchdog timers and many software catch-all protection systems. Ironically it’s actually quite hard to get a Zilla to run at all, everything has to be just right.
The Zilla processor controls the power section and can only be reprogrammed at the factory. It has pretty stable code in it that rarely changes since it does such a important job of protecting the power devices. The Hairball processor controls the contactors and many features and can be reprogrammed in the field. I consider it more flexible since a Hairball error should never cause a Zilla power section to fail. The Hairball and Zilla communicate through a nonstandard bus on Cat 5 wire which is very noise immune. (It’s not ethernet, don’t try to use cat 6 wire) If either unit loses communication with the other, it will shut down the power output in a very short time (less than 250 ms). This is done either through the Hairball by way of the main contactor and/or the Zilla power section by shutting off the IGBTs. I do it this way so that if either system fails for any reason the other will shut down power to the motor in less than one quarter second and avoid a runaway condition.
Of course all these safeties allow opportunities for false trips. At this time there is a problem I am working on which seems to affect low voltage systems (156V and under) setting 1123 errors right near full throttle and shutting down. If you are having such a problem, be sure to contact me to get me to fix your Zilla power section with (you guessed it) a code update.
During normal operation the Hairball sets the variable user voltage and current limits and does most of the safety checking while the Zilla primarily protects itself, reports status and data back to the Hairball and keeps the fast things like the multiple current and voltage limits in safe ranges.
I hope this clarifies things a bit.