CAN Enabled Relay Control PCB

Project information


  • Type: Hardware | Software
  • Skills: PCB Design | KiCAD | C++ | PCBA | Hardware Debugging
  • Student Team: UWAFT EcoCar Team
  • Role: Project Lead

Led development of a custom PCB that regulates power to components and systems by turning on/off relays that are connected to the 12V power source. The PCB has a STM32 board stacked on it to provide the processing and GPIO capabilities along with a CAN transceiver to receive CAN messages and an CAN IC to convert the CAN message to SPI for the STM32 board. The board is capable of controlling up to 15 different relays and was developed in KiCAD, the software was built in C++ using the Arduino IDE and CAN_BUS_Shield library. Three boards were soldered by hand and tested using CANalyzer software to send and receive CAN messages while using a testing harness and oscilloscope to verify functionality.