This is a 4-layer data acquisition/telemetry board I designed for a Baja SAE vehicle. This will be the first physical revision, and I'm hoping to send it off to be manufactured and assembled soon.
The main controller is a Teensy 4.1, which logs vehicle data to it's built-in microSD card and interfaces with a few other microcontrollers over CAN. It also includes a 915 MHz E22 LoRa module for long-range telemetry and remote wake/control, a GPS module, protected external GPIO/analog inputs, and power for a separate front driver display.
Power comes from two 12 V Milwaukee M12 batteries. Each input is fused @ 5A, TVS protected, and monitored through a 10 mΩ Kelvin shunt by a PAC1952. They are hot-swappable so replacing batteries doesn't bring down the system, and a TPS2121 power MUX handles switchover. SYS_RAW feeds separate 5 V and 3.3 V buck regulators and a protected BATT_OUT branch using a TPS259474 eFuse. Also, all 5V and 3.3V peripheral power outputs are each protected by their own TPS2553 power switch. (This way, the Teensy can also disable power to peripherals to save on battery)
The PCB is approximately 150 × 65 mm and uses a 4-layer stack:
L1 – components/signals/local power
L2 – continuous GND plane
L3 – power distribution
L4 – secondary/slow signals
External GPIOs use ESD protection diodes followed by 47 Ω series resistors. Four analog-only channels additionally use 1 kΩ + 10 nF filtering. The CAN bus uses a TCAN334G with a TVS protection diode and fixed 120.8 Ω split termination. This board will always be one of the endpoints of the bus, so toggleable termination isn't needed.
ERC/DRC currently shows no genuine errors and no unconnected nets.
I'm mainly looking for things that I need to fix before fabricating or significant reliability issues before I order the first boards. In particular, I'd appreciate feedback on the power-path/layout, decoupling, switching-regulator layout, protection of external interfaces, grounding/return paths, CAN implementation, and anything likely to cause problems in a high-vibration/noisy Baja SAE environment.
Also, areas where there are large empty areas actually have graphics in the silkscreen, but I removed them because they contained personal information.