Yeah, this is not a fun device to work with!
After a few hardware issues which were my bad.. (like using a 250V mosfet instead of a 30V mosfet which was triggering the heater to battery error) i have finally got no errors and I can ramp my heater.
Edit (for others debugging this issue):
In my case, I accidently used an STD17NF25 on the heater drive, when what I really needed was an STD17NF03. The characteristics of the 25-device make it a poor fit for the L9780 as a low-side heater switch.
Hereās why: the STD17NF25 is a 250 V, non-logic-level MOSFET with (1) relatively high Rds(on) and (2) a large gate charge. Both of these defeat the L9780ās internal diagnostic, which checks whether the heater line has been pulled low after the MOSFET is asserted. At normal heater currents, the higher Rds(on) keeps the drain voltage above the 250/450 mV thresholds, and the large gate charge means the line falls slowly instead of clamping hard to ground. The L9780 sees this and interprets it as a short to battery fault, even though the MOSFET is technically switching.
More generally: if the external MOSFET has too high a gate charge or overall drive requirement, the L9780ās gate driver canāt bring it into saturation quickly. The heater line then decays slowly instead of pulling down sharply. Internally, the L9780 compares the heater pin voltage against two programmable thresholds (ā250 mV and 450 mV). If the voltage doesnāt drop below the selected level within the diagnostic sampling window, it concludes that the FET hasnāt switched correctly and flags a fault.
The attached capture shows this exact behavior when using the STD17NF25 ā a high-voltage MOSFET with relatively large gate capacitance ā instead of the more suitable STD17NF03.
Lesson learned: with the L9780 heater driver, always use low-voltage, logic-level MOSFETs (e.g. ā¤40 V rating, low Rds(on) at Vgs = 5 V, and modest gate charge/Qg). High-voltage, non-logic-level parts will almost always trip the āshort to batteryā diagnostic, even if they appear to switch.
I did however have SPI issues first thing this morning but that seems to have resolved with no changes which is truly bizarre.
I ended todays efforts ramping my heat and watching the RCIMP registers but they tended not to change much at all. Seemly hovering between 0 and 30 with no linear increase with temperature. One minute they RCIMP1 is at 30 and the next its at 0.
I walked away for a coffee and now every time i talk to the device its telling me i have a STBS3 and STBS2 error⦠Which was not there before and every time, immediately after a power up Iām hit with it. I think it would be only fitting if I then developed a sudden onset of SPI issues that then miraculously cleared up.
Im stepping away before I smash away! 