...
The operating threshold is determined by the voltage range of the aux battery which is from 10-15V. This allows the aux battery to be disconnected automatically when it becomes depleted. Some margin will be added so that, accounting for resistor divider and comparator error, resulting in the following thresholds:
UV = 10.5V
OV = 1514.5V0V
Hysteresis = 500mV
An input will be considered valid given that it is between 11V and 15V with 500mV of hysteresis to allow for voltage droop due to inrush or transients due to ESL of input.
...
The comparator threshold is 1V, so R1 = 7678.2k9k, with 78.7k used.
...
R2 = 26.56k32k, with 26.7k used.
Actual configuration, not accounting for error is as follows:
...
During a fault or open load scenario, the ISense voltage can exceed the 4V maximum rating on the MCU ADC pins. No discrete clamp diode is added since the mux clamps inputs to Vcc + 0.5V, where Vcc is 3.3V.
Digital Inputs
EN
Enable pins should have have pull down resistors to ensure that the load is off during when not being actively driven. In Rev 2.0, the pins are left floating if the controller board is not flashed, resulting in all the switches being enabled. The datasheet suggests that if a pulldown exists, a load might stay on during loss of ground, however, the risk of this is low compared to a fault that causes the controller board to fail, leave the pins floating and all the loads on.
Layout
Given the max steady state current is anticipated to be 3.5A, minimum conductor width will be sized for 4A with a temp rise of 25C. Conductors will be enlarged beyond the minimum where possible to reduce power loss.
...
Component designators have largely been omitted from the layout due to space constraints. The usefulness of designators decreases with increasing board size, as having “C57” among hundreds of 0603 parts does not make it easier to find. Eventually the “Top Designator” layer will be updated with all designators so that they are included in the PDF export.
Issues
Change Log
Rev 1.0
Somehow the NC drill file got messed up
...
There was an erroneous drill hole at (x, y) (14.75, 58.25)mm, shorting both 12V fused and gnd
Resolution: Drill out the via, luckily there are no nearby traces/components
Missing holes at (13.25, 55.25) and (13.85, 54.4), which are the A and B supplies for DCDC power path U5B
Resolution: Solder jumper wires
...
VIN Short
Symptom: Both 12V inputs were shorted to ground. When injecting current to try and find the short, the impedance of the short was so low that no significant heat was generated.
Cause: NC drill files got messed up, which resulted in holes where there weren’t supposed to be as well as via pads without holes. The erroneous plated holes shorted through all the layers.
...
Resolution: Holes were drilled out, and jumper wires were soldered to make up for the missing vias. NC drill file was regenerated which resolved the issue.
Startup Inrush
Symptom: When 12V power is applied to either input while a controller board is connected to a programmer, the board makes a buzzing noise and 12V fails to reach the output of the power path ICs
Cause: On startup, the LTC4418 limits the slew rate of the output to reduce the inrush current. However, slew rate limiting on startup is only active if the output is below 2.3V. When a programmer is plugged in, it provides 3V power to the 12V rail, bypassing the slew rate limit on startup. The inrush current results in the input voltage dropping below UVO, causing the IC to shut the output fets and continually retry.
Resolution: Since there will be no programmer connected to the controller board in the vehicle, no hardware changes will be made.
Change Log
Rev 2.0
Rev 1.0 was a copy of the MSXIV, and did not fit into the MSXV system. Rev 2.0 should really be “1.0”.
Rev 2.1
It was found that the 5V buck ICs were damaged (shorted) when testing the OVP. As such, the OVP was lowered from 15 to 14V. The aux battery when fully charged settles over time to ~13.75V so it should still be okay.
Wack vias were fixed by regenerating NC drill files
Pulldowns for all the EN pins added, since if the controller board is not flashed and the output to the IO expanders are floating, all the outputs are on in their default state.