The SmartPower Board features the following capabilities:

Power Supply:
In the current version we have the following outputs: ECU, 5V, 3.3V and Actuators.
At startup, all outputs are activated in a predefined order. If one output fails to start within the defined voltage and current range, the bootup sequence will come to an halt. The reaction of the system in this case is configurable. All in- and outputs are constantly monitored for voltage and current. If one in or output violates the configurable rules for voltage and current, the output is deactivated. Moreover it is possible to trigger complex escalation scenarios including shutdown, reset or signaling to the ECU.

Module monitor:
The car utilizes a CANopen network to establish the communication between the modules. SmartPower is aware of which module is connected to which power supply output. If an output is activated, the modules at this output send a bootup message to the SmartPower board. It can be configured if all modules are expected to boot up or only a subset. It is possible to escalate the unavailability of expected modules in several ways, including shutdown of the respective output. During operation, the attached modules are constantly monitored. If a module (e.g. an engine controller) is not reachable anymore, the reaction is configurable.

Emergency Stop:
SmartPower is an essential part of the overall safety concept for the StudentCar. It has 2 emergency stop inputs, one will disbale all outputs, while the other will only disable a configurable subset. This way, 2 levels of emergency stop handling are possible. SmartPower uses a Cypress PSoC 5, which has programmable logic. The emergency stop logic is implemented in the programmable hardware part, ensuring that the safe state can be reached independently of the CPU state.

CANopen Server:
All configuration parameters such as legal voltage ranges can be configured via CAN. Moreover, SmartPower has an interface where abstract commands like "enable ECU output" or "Reset" can be used.

The board was first prototypical build on a breadboard. 

In the second revision we milled the PCB at our university. Since we did not want to mill and assemble a new PCB with every bug or change, we build the second revision in a modular way, where each critical sub-circuit was implemented on an own PCB, which then was piggy-backed on the SmartPower mainboard.

In a third revision we had the PCBs manufactured.

//TODO: Pics or it didn't happen