List of proposed changes:
Add schottky diode reverse-biased between reset and 3V3 - should help avoid weird states in cases of sudden power loss.
Some MSXIV boards were damaged by applying reverse polarity to 12V, so it would be nice to have reverse polarity protection on all boards that use 12V. Since all boards that have a controller board also use 12V, it might be convenient to include the 12V connector and reverse polarity protection on the controller board, although this will have some challenges. Also, each controller board could have a load switch that powers the carrier board, which would eliminate the need for power distribution. This might simplify manufacturing, but the power consumption would be slightly higher because all controller boards would be on all the time.
Mechanical durability (are standoffs sufficient to prevent damage to the controller board when connecting/disconnecting 12V?)
Current rating. I think ~6A is sufficient, but this will require either more pins on the mezzanine connector (a lot more) or a different connector.
Something like the BM24 series connectors from Hirose would be interesting because it has dedicated power pins (5 A current rating), but it’s an FPC connector (there would be no room for components on the bottom of the controller board).
I recently saw spring contact connectors that claimed current ratings 9 A, but I’m not sure how reliable they are…
3. Different mezzanine connector?
I don’t have any evidence, but I feel like the mezzanine pins are really susceptible to solder bridges, especially at the back of the pin, under the plastic where it cannot be fixed… A connector with a different pin shape might prevent this.
4. ESD protection
Exposed GND ring around edge of PCB
I/Os on the mezzanine connector
Switch the mezzanine receptacle and plug? When not connected, the controller board has a strip of exposed contacts, so to reduce the chance of ESD from touching the controller boards, maybe the shrouded plug should be on the controller boards instead of the carrier boards.
Series resistor arrays? Probably the cheapest option, but the cutoff frequency will need to be higher than the highest frequency signals (probably SPI@18Mbit/s).
TVS diodes? More effective than resistors, but will be more expensive and require a LOT of board space.
These connectors might be convenient for programming (although a bit expensive): https://www.tag-connect.com/product/tc2030-idc-6-pin-tag-connect-plug-of-nails-spring-pin-cable-with-legs
What has been researched so far:
Looks like there is no reason for us not to put a Schottky diode
Reverse polarity protection could be as simple as placing a suitably rated schottky diode? Any suggestions about why it would not be enough are welcome. Currently looking into the feasibility of having power go through the controller boards but not sure how this would eliminate the need for power distribution - we could just have PD connect to the controller board instead of carrier board. Arguments against this would also be very much welcome.
There’s some research done by Vinai for MSXIV for protecting against reverse polarity. Looks like MOSFET was preferable there as well. A single 12V rated FET starts at 63 cents.
Currently looking into alternative connectors. Factors to consider: better plastic separation between pins, pins with less length in the plastic (first need to see the trade-offs in comparison with pieces having longer pins and wider plastic). One suitable alternative for a connector is Hirose 50 POS Connector (Receptacle: DF40C-50DP-0.4V(51), Header: DF40C-50DP-0.4V(51)). The pins do not extend too far into the plastic. Only setback is that the pitch is 0.4mm as opposed to the previous 0.5mm.
We also need to place the pads a little towards the tip of the pin instead of closer to the center
Altium has an article for suggested ESD protection methods: Beginner’s Guide to ESD Protection Circuit Design for PCBs | Blog | CircuitMaker (altium.com). Maybe we could implement one or multiple of these. Will need to look into which one is most feasible
Use of TVS diode for ESD protection:
TVS diode provides voltage suppression. Considering we are dealing with PWM, the bidirectional TVS diode would be the better option as opposed to the unidirectional TVS diode. Cost per unit is $0.59, $14.75 total (25 diodes). Has a reverse standoff of 5V and a breakdown of 6.4V.
Part #: SMAJ5.0CA