Power controller

Version 38.1 by Mathias Larsen on 2026/09/23 18:47

Power controller
3D model of the Power controller from Altium Designer
Supply voltage
12–24 V DC
Fused circuits
9 (5 × 24 V outputs, fan outputs, digital outputs, 12 V circuit, internal electronics)
24 V outputs
5
24 V fan outputs
2 (shared fuse)
12 V outputs
2
Digital outputs (shared fuse)
2 × 12 V switched (5 A), 2 × 24 V switched (330 mA), 2 × PWM
Communication interface
CAN FD
Maximum data rate
1 Mbps

Table of contents


Pinout

Connector pinout

PinSignalComment 
1CANH  
2CANL  
3FAN 1 PWM  
4FAN 2 PWM  
5GNDSolder blob 
6GNDSolder blob 
7GNDSolder blob 
8GNDSolder blob 
9Accumulator  
10Front  
11Power fan  
12Power fan  
13GND  
14GND  
15GND  
16GND  
17GND  
18GND  
19GND  
20GND  
21GND  
22GND  
23GND  
2412V  
2512V  
2612V power pump 1  
2712V power pump 2  
28GNDSolder blob 
29GNDSolder blob 
30GNDSolder blob 
31BuzzerIs brake light in wiring harness 
32Brake lightIs buzzer in wiring harness 
3324VReserve 
3424VReserve 
3524VSensor card 

Microcontroller pinout

The power controller uses a microcontroller to control the pumps, fans, buzzer and brake light. It also handles current monitoring and the LED indicators. The microcontroller used in this system is the STM32G431CBT6.

Physical pinElectrical pinDescription
1VBATBackup battery supply, used if an RTC is needed (connected to +3V3 in this design)
5OSC_INClock input (8 MHz oscillator)
7NRSTActive-low reset, can be connected to a button (connected to +3V3)
8PA0Analog signal: Current 6, supply 24 V reserve
9PA1Analog signal: Current 7, supply 24 V reserve
10PA2Analog signal: Current 5, supply sensor card
11PA3Analog signal: Current 4, supply front
12PA4Analog signal: Current 3, supply accumulator
13PA5Analog signal: Current 2, supply fans
14PA6Digital output: LED 9
15PA7Digital output: LED 2
16PB0Analog signal: Current 8, supply buzzer and brake light
17PB1PWM: Enable fan 1
18PB2Input: V-sense
19VSSAVoltage source: Ground
20VREFVoltage reference (internal voltage reference)
21VDDAVoltage source: Power (+3V3)
22PB10Digital output: LED 8
23VSSVoltage source: Ground
24VDDVoltage source: Power (+3V3)
25PB11Analog signal: Current 1, internal components
26PB12Analog signal: Current 9, supply 12 V pumps, inverter and data logger
29PB15PWM: Enable fan 2
30PA8Digital output: Enable buzzer (on the car it is the brake light)
31PA9Digital output: Enable brake light (on the car it is the buzzer)
32PA10Input: ASMS signal
33PA11CAN bus RXD
34PA12CAN bus TXD
35VSSVoltage source: Ground
36VDDVoltage source: Power (+3V3)
37PA13SWDIO
38PA14SWCLK
40PB3Digital output: LED 3
41PB4Digital output: LED 4
42PB5Digital output: LED 5
43PB6Digital output: Enable pump 1
44PB7Digital output: Enable pump 2
45PB8Digital output: LED 6
46PB9Digital output: LED 7
47VSSVoltage source: Ground
48VDDVoltage source: Power (+3V3)

Distribution circuit

The board has 9 distribution circuits, one for each fused output group. All 9 circuits use the same design, and the component reference designators follow the circuit number (circuit 1 uses R101–R104, C101, D101 and F101, circuit 2 uses R201–R204, and so on). Each circuit consists of:

  • A fuse in a Littelfuse nano fuse holder, so the fuse can be replaced without soldering
  • A 2 mΩ shunt resistor for current measurement
  • A current sense amplifier channel and a low-pass filter to the microcontroller ADC
  • An RGB LED, where the green channel shows that the fuse is intact and the red channel is controlled by the microcontroller

1790100104451-169.png

ComponentValueRef Des (circuit 1)
Fuse holderLittelfuse nanoF101
Shunt resistor2 mΩ, 1 %, 5 W, 2512R101
Filter resistor10 kΩR102
Filter capacitor10 nFC101
Green LED resistor4.7 kΩ, 0805R103
Red LED resistor350 ΩR104
RGB LEDWürth 150282M167310D101

Green LED

The green LED indicates whether the fuse is intact. It is connected from the output side of the fuse to ground through a 4.7 kΩ resistor. When the fuse is intact, the LED lights up. If the fuse blows, the LED loses its supply and turns off. This makes it easy to find a blown fuse by looking at the board.

The LED is powered directly from the output voltage, so the current depends on the supply. At 24 V the current is roughly 4–5 mA, and at 12 V it is about 2 mA. This turned out to be brighter than necessary.

1790098808447-123.png

Current sense

The current in each circuit is measured by passing it through a shunt resistor with a very low resistance and measuring the voltage drop across it. This small voltage is amplified, filtered and read by the microcontroller's ADC.

Shunt resistor

A 2 mΩ shunt resistor is placed in series with the load. The voltage drop across it is 2 mV per ampere of current (0.002 V/A).

The shunt is a Vishay WSLF2512 metal strip resistor with 1 % tolerance and a 5 W rating. The low resistance keeps the losses small: at 8 A the voltage drop is only 16 mV and the power loss is about 0.13 W.

1790100157872-786.png

Amplifier

The amplifier is a quad-channel current sense amplifier with a gain of 200 V/V. When the measured voltage drop passes through the amplifier, the output is therefore 0.4 V per ampere.

The board uses three INA4180A4 amplifiers (U3, U4, U5) from Texas Instruments. This gives 12 channels, of which 9 are used. The INA4180 measures on the high side and accepts a common-mode voltage of up to 26 V, so it can measure directly on the 24 V outputs.

With the 3.3 V ADC on the microcontroller, the maximum measurable current is about 8 A (3.3 V / 0.4 V/A ≈ 8.25 A). Above this, the amplifier output saturates.

CurrentShunt voltageAmplifier output
1 A2 mV0.4 V
2.5 A5 mV1.0 V
5 A10 mV2.0 V
8 A16 mV3.2 V

Filter

The filter is a low-pass filter with a cutoff frequency of 1.6 kHz.

It is an RC filter made of a 10 kΩ resistor and a 10 nF capacitor between the amplifier output and the ADC pin: fc = 1 / (2π × 10 kΩ × 10 nF) ≈ 1.6 kHz. The filter removes high-frequency noise, for example from PWM-controlled fans and switching loads, before the signal is sampled. The capacitor also acts as a charge reservoir for the ADC's sampling capacitor.

Power amplifier

1790101431805-672.png

Voltage measurement

The supply voltage is measured so the microcontroller can monitor the LV battery voltage. The signal is read on pin PB2 (V-sense).

A voltage divider with a ratio of 1:11 is used, so 24 V corresponds to 2.182 V on the microcontroller pin.

The input voltage is calculated in firmware as Vin = Vpin × 11. With a 3.3 V ADC, the highest voltage that can be measured is about 36 V, which gives good margin above the 24 V supply.

Supply voltageVoltage on pin
12 V1.09 V
20 V1.82 V
24 V2.18 V
30 V2.73 V

1790101449150-901.png

12 V supply (did not work)

The 12 V supply is a synchronous buck converter that steps the 24 V supply down to 12 V for the pumps, inverter and data logger. It is built around an LM5148 buck controller (U801) from Texas Instruments, which drives two external N-channel power MOSFETs (IAUCN04S7L028, Q901 and Q902) as the high-side and low-side switches. The output inductor is a 0.65 µH Coilcraft XAL7070 (L901), and a 3 mΩ resistor (R910) is used for current sensing in the controller.

ComponentPartRef Des
Buck controllerLM5148RGYRU801
Power MOSFETsIAUCN04S7L028ATMA1Q901, Q902
InductorXAL7070-651MEB, 0.65 µHL901
Current sense resistor3 mΩ, 3 WR910
Output capacitors22 µF, 25 VC909–C912

The buck converter overheated under load and made a whining sound.

1790102044737-969.png

A Mateksys PM20S-2 power module was used as a quick fix to provide 12 V for the competition.

5 V, 3.3 V and CAN bus

Uses the standard Align template.

  • 5 V: An AP64060 synchronous buck converter (U6) steps the input voltage down to 5 V. It accepts 4.5–40 V in and delivers up to 0.6 A.
  • 3.3 V: An AP2112K-3.3 LDO regulator (U7) generates 3.3 V for the microcontroller and the current sense amplifiers.
  • CAN bus: An NCV7344 CAN FD transceiver (U2) connects the microcontroller to the CAN bus. The transceiver supports up to 5 Mbps, and the bus runs at 1 Mbps. A common-mode choke (L1) reduces noise on the bus lines, and a TVS diode (D1) protects them against ESD and voltage spikes.

The whole board is protected by a 400 W power TVS diode (D2) on the input, which clamps voltage spikes on the supply.

Control logic

Sourced from the microcontroller

The programmable red light is part of the same RGB LED as the green fuse indicator. It is controlled by the firmware and can be used to show the status of each circuit, for example an overcurrent or an output that is switched off.

Current is sourced directly from the microcontroller through a 350 Ω series resistor. When the pin is driven high (3.3 V), current flows through the resistor and the red LED to ground. The STM32 pins can supply up to about 20 mA each, so no transistor is needed. This gives an LED current of roughly 3–4 mA, which made the LEDs too bright. The resistor value should be increased on the next version.

1790098512666-432.png

High-side switching

The buzzer, brake light and pumps are switched on the high side. The load's negative side is permanently connected to ground, and the controller switches the positive supply. This means a short from the output wire to chassis cannot turn the load on, and the load is completely unpowered when it is off.

Each output uses a P-channel MOSFET as the main switch between the supply and the load. A P-channel MOSFET is used because it can switch the high side without a charge pump or gate driver. It turns on when its gate is pulled below its source (the supply voltage).

The microcontroller runs on 3.3 V and cannot pull the gate of the P-channel MOSFET far enough on its own. A small N-channel MOSFET is therefore used as a level shifter:

  • Output off: The microcontroller pin is low, so the N-channel MOSFET is off. A pull-up resistor holds the P-channel gate at the supply voltage, so VGS = 0 V and the P-channel MOSFET is off.
  • Output on: The microcontroller pin goes high (3.3 V) and turns on the N-channel MOSFET. This pulls the P-channel gate towards ground, VGS becomes negative and the P-channel MOSFET turns on.

A 1 kΩ series resistor on the N-channel gate limits the current from the microcontroller pin, and a 10 kΩ pull-down keeps the output off while the microcontroller is starting up or in reset.

Buzzer and brake light

The buzzer and brake light are switched on the high side using an N-channel MOSFET (BSS123NH6327XTSA1) that drives a P-channel MOSFET (BSS83PH6327XTSA1).

These outputs run on 24 V. The BSS83P is rated for -60 V and -0.33 A, which limits each output to 330 mA. This is enough for the buzzer and an LED brake light. The maximum gate-source voltage of the BSS83P is ±20 V, so the gate must not be pulled all the way to ground from 24 V. The two 10 kΩ resistors on the P-channel gate form a voltage divider that limits VGS to about half the supply (≈ -12 V).

1790181075885-591.png

FunctionBuzzer / brake light
Supply24 V
N-channel MOSFETBSS123NH6327XTSA1 (Q803, Q804)
P-channel MOSFETBSS83PH6327XTSA1 (Q801, Q802)
Gate resistor1 kΩ (R807, R808)
Pull-down / pull-up / divider10 kΩ (R805, R806, R809–R812)
Maximum output current330 mA

Pump

The N-channel MOSFET (BSS123NH6327XTSA1) is the same as for the buzzer and brake light, but the P-channel MOSFET (BSC084P03NS3GATMA1) has a much higher current rating.

The pumps run on 12 V and draw considerably more current. The BSC084P03 is a power MOSFET rated for -30 V and -78.6 A, with an on-resistance of about 8.4 mΩ. At 5 A this gives a loss of only about 0.2 W, so no heatsink is needed. Since the supply is 12 V, the gate can be pulled fully to ground without exceeding the ±20 V gate-source rating.

1790181054296-268.png

FunctionPump 1 / Pump 2
Supply12 V
N-channel MOSFETBSS123NH6327XTSA1 (Q905, Q906)
P-channel MOSFETBSC084P03NS3GATMA1 (Q903, Q904)
Gate resistor1 kΩ (R913, R914)
Pull-down / pull-up10 kΩ (R911, R912, R915, R916)
Maximum output current5 A

Known issues

  • The 12 V supply did not work.
  • The current measurement has not been tested.

Features to add

  • Add MOSFETs to cut power if the LV battery voltage is too low, to save power.
  • Add power distribution for the autonomous system.

BOM (bill of materials)

Part NumberDescriptionRef DesQtyManufacturerMPN
CC0603KRX5R6BB475Chip Capacitor, 4.7µF +/-20%, 10V, 0603C11Yageo GroupCC0603KRX5R6BB475
CL10B104KA8NNNCMLCC, 0.1 uF, 25V, ±10%, X7R, 0603C2, C3, C4, C8, C9, C10, C14, C15, C169Samsung Electro-MechanicsCL10B104KA8NNNC
CL10B105KA8NFNCMLCC, 1uF, 25V, 10%, X7R, 0603C5, C72Samsung Electro-MechanicsCL10B105KA8NFNC
CL10B103KB8NNNCMLCC, 10nF, 50V, +125C, X7R, ±10%, 0603C6, C101, C201, C301, C401, C501, C601, C701, C801, C90110Samsung Electro-MechanicsCL10B103KB8NNNC
885012206020MLCC, General Purpose, 0603, 100nF, 10VC111Wurth Elektronik885012206020
885012006051MLCC, General Purpose, 0603, 10pF, 50VC12, C132Wurth Elektronik885012006051
885012208124MLCC, General Purpose, 1206, 2.2µF, 100VC17, C192Wurth Elektronik885012208124
885012108022MLCC, General Purpose, 1206, 10µF, 50VC181Wurth Elektronik885012108022
885012206071RMLCC, General Purpose, 0603, 100nF, 25VC201Wurth Elektronik885012206071R
885012107014MLCC, General Purpose, 0805, 10µF, 16VC21, C222Wurth Elektronik885012107014
MBASU105SB5104KFNA01MLCC, 50V, 10%, X5R, 0.1uF, 0402C23, C242TAIYO YUDENMBASU105SB5104KFNA01
GRM32ER71H475KA88LMLCC, 1210, 4.7uF, 50V, ±10%, X7RC902, C9032MurataGRM32ER71H475KA88L
GRM188R71A225KE15DMLCC, 0603, 2.2uF, X7R, 10VC9041MurataGRM188R71A225KE15D
CC0402KRX7R6BB104Chip Capacitor, 100nF +/-20%, 10V, 0402C905, C9082Yageo GroupCC0402KRX7R6BB104
GRM1555C1H102JA01JMLCC, 0402, 1nF, 50V, ±5%, C0GC9061MurataGRM1555C1H102JA01J
GRM1555C1H4R3CA01DMLCC, 0402, 4.3pF, 50V, C0G, ±0.25pFC9071MurataGRM1555C1H4R3CA01D
GRM32ER61E226KE15LMLCC, 1210, 22uF, 25V, X5RC909, C910, C911, C9124MurataGRM32ER61E226KE15L
824094024WE-TVS TVS Diode, SOT23-3L, 2 Channel, 24V, 38pFD11Wurth Elektronik824094024
824500261WE-TVSP SMT Power TVS Diode, DO-214AC, 400W, 26VDCD21Wurth Elektronik824500261
150282M167310WL-SFTD Full-color Top LED, 2828, R/G/B, 70°D101, D201, D301, D402, D501, D601, D701, D801, D9019Wurth Elektronik150282M167310
01550900DRFuseholder - Acs NanoF101, F201, F301, F401, F501, F601, F701, F801, F901, F902, F903, F90412Littelfuse01550900DR
0466.125NRElectric Fuse, Very Fast Blow, 0.125A, 125VAC/VDC, 1206F1021Littelfuse0466.125NR
776231-1Conn Shrouded Header, HDR 35 POS, 4mm, Thru-HoleJ11TE Connectivity776231-1
76829-0002Mega-Fit Straight Male Header, 2x2, 5.7mm PitchJ21Molex76829-0002
(4 pin header)2.54mm pitch 1x4 vertical headerJ31Generic 
44914-0401Conn Header Vert 4POS 3mmJ41Molex44914-0401
1461247-3Relay, Gen Purpose, SPST, 8A, 24VK11TE ConnectivityOJ-SH-124LMH,000
784234510WE-CNSA Common Mode Line Filter, 1210, 7850Ω, 200mAL11Wurth Elektronik784234510
74438323100WE-MAPI SMT Power Inductor, 2510, 10µH, 0.9A, 733mΩL2, L32Wurth Elektronik74438323100
XAL7070-651MEBGeneral Purpose Inductor, 0.65uH, 20%, 3028L9011CoilcraftXAL7070-651MEB
BSS123NH6327XTSA1MOSFET N-CH 100V 0.19A SOT-23Q201, Q202, Q803, Q804, Q905, Q9066InfineonBSS123NH6327XTSA1
BSS83PH6327XTSA1SIPMOS Small-Signal Transistor, -0.33A, -60V, SOT-23Q801, Q8022InfineonBSS83PH6327XTSA1
IAUCN04S7L028ATMA1Mosfet, N-ch, 40V, 100AQ901, Q9022InfineonIAUCN04S7L028ATMA1
BSC084P03NS3GATMA1P-Channel OptiMOS P3, -30V VDS, -78.6A ID, PG-TDSON-8-1Q903, Q9042InfineonBSC084P03NS3GATMA1
(( TBD ))Generic Resistor, 350Ω, 0603R104, R204, R304, R404, R504, R606, R704, R804, R9049(( TBD )) 
(( TBD ))Generic Resistor, 1KΩ, 0603R205, R206, R807, R808, R913, R9146(( TBD )) 
(( TBD ))Generic Resistor, 10KΩ, 0603R1, R207, R208, R805, R806, R809, R810, R811, R812, R911, R912, R915, R91613(( TBD )) 
(( TBD ))Generic Resistor, 1.6KΩ, 0603R21(( TBD )) 
(( TBD ))Generic Resistor, 2.2Ω, 0603R31(( TBD )) 
(( TBD ))Generic Resistor, 27KΩ, 0603R41(( TBD )) 
(( TBD ))Generic Resistor, 5.1KΩ, 0603R51(( TBD )) 
WSLF25122L000FEARes Metal Strip 2512, 0.002Ω, 1%, 5WR101, R201, R301, R401, R501, R601, R701, R801, R9019VishayWSLF25122L000FEA
CR0603-FX-1002ELFSMD Resistor, 10kΩ, ±1%, 100mW, 0603R102, R105, R202, R302, R402, R502, R602, R702, R802, R90210BournsCR0603-FX-1002ELF
CR0805-JW-472ELFSMD Resistor, 4.7kΩ, ±5%, 125mW, 0805R103, R203, R303, R403, R503, R603, R703, R803, R9039BournsCR0805-JW-472ELF
CR0603-FX-1001ELFRES SMD 1K Ohm, 1%, 1/10W, 0603R1061BournsCR0603-FX-1001ELF
CRCW060347K5FKEARes Thick Film 0603, 47.5KΩ, 1%, 1/10WR9051VishayCRCW060347K5FKEA
RC0603FR-13100KLChip Resistor, 100KΩ, ±1%, 0.1W, 0603R9061Yageo GroupRC0603FR-13100KL
AC0402FR-0712K1LRes Thick Film 0402, 12.1KΩ, 1%, 1/16WR9071Yageo GroupAC0402FR-0712K1L
CRCW060340K2FKEARes Thick Film 0603, 40.2KΩ, 1%, 1/10WR9081VishayCRCW060340K2FKEA
CRCW06039K53FKEARes Thick Film 0603, 9.53KΩ, 1%, 1/10WR9091VishayCRCW06039K53FKEA
WSR33L000FEARes Metal Strip 4527, 0.003Ω, 1%, 3WR9101VishayWSR33L000FEA
STM32G431CBT6MCU 32-bit ARM Cortex M4, 128KB Flash, 48-Pin LQFPU11STMicroelectronicsSTM32G431CBT6
NCV7344D13R2GCAN FD Transceiver, ISO 11898-2, 5Mbps, SOIC-8U21onsemiNCV7344D13R2G
INA4180A4IPWR26V Quad Channel Current Sense Amplifier, 14-TSSOPU3, U4, U53Texas InstrumentsINA4180A4IPWR
AP64060WU-7DC-DC Synchronous Step Down, 4.5-40V to 0.8-26V, 0.6A, TSOT-26U61Diodes Inc.AP64060WU-7
AP2112K-3.3TRG1Fixed Positive LDO, 3.3V, 0.4V Dropout, PDSO5U71Diodes Inc.AP2112K-3.3TRG1
LM5148RGYR3.5-80V Current Mode Synchronous Buck Controller, 24-VQFNU8011Texas InstrumentsLM5148RGYR
ASE-8.000MHz-E-TCrystal Oscillator, 8MHz, 3.3V, 15pF, 4-Pin SMDY11AbraconASE-8.000MHZ-E-T

AR27 Concept

This section describes the concept for AR27.

Changes

  • Connector
    • Change main connector
  • Circuits
    • More dedicated supply circuits
    • Keep the same current sensing
    • Increase the signal LED resistor on the PCB (the LEDs were too bright)
  • Microcontroller
    • Needs more inputs
  • Digital signals
    • Increase the green signal LED resistor on the PCB (the LEDs were too bright)
  • 12 V supply
    • Three separate 12 V supplies:
      • Pump 1
      • Pump 2
      • Inverter / other 12 V loads
  • Autonomous
    • Supplied by ASMS
    • Potentially control ASSI
    • ASMS state detection

Supply table

Standard supply table

 VoltageShared supplyQty
IPC24VStandalone1
Pumps12VStandalone2
Fans24VStandalone 
HV box24VStandalone 
Energy meter12VInverter, energy meter 
Inverter12VInverter, energy meter 
Accumulator24VStandalone 
Brake light24VBuzzer, brake light 
Buzzer24VBuzzer, brake light 
Sensor module (rear)24VSensor modules, telemetry 
Sensor module (front)24VSensor modules, telemetry 
Tire temperature12VTelemetry, tire temperature 
Telemetry12VTelemetry, tire temperature 
Telemetry24VSensor modules, telemetry 
Dashboard24VStandalone 
SDC24VStandalone 
SDC monitor24VDashboard, telemetry, SDC monitor 
Internal circuitry24VStandalone 

Autonomous supply table

 QtyCurrent
Steering motor1?
ASB/ESB ?
ASSI2?
RES1?

Relevant rules

Rule numberRule