Skip to content

How to Design a BMS Precharge Circuit: Resistor, Relay and Power-Up Timing ​

Bottom line: the design order is calculate the surge first, set the resistance second, define the timing third. On BMS and inverter products with large bus capacitance, closing the main relay or main MOSFET directly charges the capacitor through milliohm-level loop impedance, and the instantaneous surge reaches the order of a thousand amperes — at best welding contacts and damaging MOSFETs, at worst dipping the bus voltage far enough to reset the controller. The engineering answer is an independent branch of precharge relay plus precharge resistor in parallel with the main relay: charge first, then close, then disconnect. Close the main path once the bus voltage reaches 90 to 95 percent of battery voltage (typical), and always include a precharge timeout.

mermaid
flowchart TD
    A["1. Power-up self check<br/>battery voltage / fault flags / controller ready"] --> B{"Bus voltage abnormal?<br/>(short / residual voltage)"}
    B -- "yes" --> Z["Report precharge failure, block power-up"]
    B -- "no" --> C["2. Close precharge relay<br/>battery to precharge resistor to bus cap"]
    C --> D["3. Monitor bus voltage rise<br/>tau = RC, about 95 percent at 3 tau"]
    D --> E{"Timeout? Or voltage not rising / current abnormal?"}
    E -- "yes" --> Z
    E -- "no" --> F["4. Bus voltage at or above 90 to 95 percent of battery<br/>close main relay or main MOSFET"]
    F --> G["5. Open the precharge branch<br/>resistor carries no power"]
    G --> H["6. Enable load / inverter<br/>power-up complete"]

First, the two questions asked most often ​

Question: what happens if I close the main relay without precharge? The battery charges the bus capacitor through milliohm-level wiring and contact resistance. On a 48 V platform with total loop impedance of a few tens of milliohms, the instantaneous current is theoretically on the order of a thousand amperes (contact bounce and loop inductance cut it in practice, but it is still far beyond what contacts and devices can take). Typical consequences: main relay contacts weld and never open again; the main MOSFET is damaged beyond its surge or avalanche rating; and the bus voltage dips momentarily, triggering undervoltage protection or resetting the controller. So precharge is not optional; it is mandatory for products with large bus capacitance, and can only be omitted when the bus capacitance is very small or the topology has inherent soft-start capability.

Question: what resistance and power rating for the precharge resistor? Derive the value from the target precharge current: R is approximately (battery voltage minus initial bus voltage) divided by precharge current, with low-voltage BMS designs commonly limiting precharge current to 1 to 5 A. Power needs two separate calculations: pulse energy from E is approximately one half C U squared (charging from zero to battery voltage splits the energy evenly between resistor and capacitor), about 1.2 J for 48 V with 1000 microfarads and tens of joules on high-voltage platforms; and steady-state power from the worst-case branch failure at P is approximately V squared divided by R, backed by a timeout. Both must be satisfied or the resistor burns.

Step 1: calculate the surge and understand what precharge prevents ​

At the instant of power-up the circuit is the simplest RC charging loop there is — except that this R is frighteningly small:

  • Loop impedance is only milliohms: battery internal resistance plus busbar and trace plus relay contact resistance plus MOSFET on-resistance, typically totaling a few tens of milliohms on a 48 V e-bike protection board.
  • Surge current: I peak is approximately V bat divided by R total. 48 V divided by 30 milliohms is about 1600 A (a theoretical value; loop inductance and the contact process shave some off, but the order of magnitude stands).
  • Three parties get hurt: relay contacts (welding), the main MOSFET (beyond single-pulse avalanche or surge rating), and the bus itself (voltage dip plus radiated EMI).

Conversely, "limiting precharge current to a few amperes" physically means raising the effective charging impedance from milliohms to tens of ohms so the capacitor fills smoothly over tens to hundreds of milliseconds — a delay the power-up sequence absorbs without complaint.

Step 2: selecting the precharge resistor and branch devices ​

Precharge resistor: the value is easy, the pulse energy is the real constraint ​

Voltage platformPrecharge current targetResistance orderPulse energy order (typical bus capacitance)
48 V (e-bike / portable storage)About 3 A limitAround 15 ohmsAbout 1.2 J (for 1000 microfarads)
96 V (low-voltage residential storage / AGV)About 3 A limitAround 30 ohmsAbout 5 J (for 1000 microfarads)
300 V class (high-voltage residential storage / PCS)About 5 A limitAround 60 ohmsTens of joules (hundreds of microfarads to millifarads)

The table assumes zero initial bus voltage and ignores other loop impedance, and gives orders of magnitude only. Charging only to 90 to 95 percent makes the real energy slightly lower than one half C U squared. Bus capacitance, allowed power-up time and the resistor pulse rating constrain each other; final values follow real capacitance, timing requirements and measurement on the complete product.

Selection points:

  • Look at the pulse energy rating, not just steady-state watts. Precharge is a single (or low-frequency) high-energy pulse, and the pulse withstand of an ordinary thick-film chip resistor is far below that of a wirewound or aluminium-housed part of the same size. High-voltage platforms commonly use aluminium-housed wirewound or high-power thick-film resistors.
  • Frequent power cycling must be converted through duty ratio. Storage products repeatedly wake from standby and sleep, so the resistor sees a periodic pulse train and must be checked against both average power and peak temperature.
  • Cover steady-state failure power with a timeout. Once precharge finishes the branch opens and the resistor dissipates nothing; but if the precharge relay welds or the sequence hangs, the resistor carries P is approximately V squared divided by R continuously — 48 V divided by 15 ohms is about 153 W, which no resistor survives. Precharge timeout protection is therefore not a nice-to-have; it is what keeps the resistor alive.

Branch device selection points ​

PositionKey parametersSelection pointsCommon trap
Precharge relay / precharge MOSFETContact (or on-state) current, voltage ratingA small-current relay sized for the precharge current is enough; with a MOSFET, pick the voltage rating from the main path platform and check on-state against the pulse currentSpecifying the precharge relay to the same rating as the main relay wastes money; MOSFET designs ignore single-pulse SOA
Precharge resistorPulse energy, value tolerance, temperature driftPulse rating at or above the real one half C U squared with margin; too low a value pushes precharge current over targetSelecting on steady-state watts alone; not assessing sharing when paralleling several parts
Main relay / main MOSFETContinuous current, contact (or on-state) dropSized for continuous charge and discharge current; at closure the differential voltage has already been reduced by precharge to 5 to 10 percent, so there is no surge burdenAssuming a large relay can simply absorb the surge — welding and contact bounce still occur
Precharge branch protectionSurge withstand, polarityThe branch is exposed to battery-side surge and reverse connection risk just like the main pathLeaving the branch unprotected so surge or reverse connection kills precharge first

For overvoltage protection on the branch and main path, see How to Select a Low-Clamping TVS for a BMS Protection Board (Chinese); for gate drive and single-pulse SOA checks on a precharge MOSFET, see How to Design a MOSFET Gate Drive Circuit.

Step 3: power-up timing and the precharge criteria ​

Precharge is not just "close, wait, close". Four criteria are all mandatory:

  1. Precharge preconditions: power-up self check passes, no fault flags, and no residual voltage or sign of short on the bus (bus voltage should be near zero before precharge; if it is already high, something abnormal needs handling first).
  2. Threshold for closing the main path: close the main relay only when the bus voltage reaches 90 to 95 percent of battery voltage (typical). Too low a threshold leaves a large differential across the main relay and still gives a sizeable inrush at closure; too high stretches precharge time and heats the resistor further. 95 percent leaves only about 5 percent differential and is the common engineering choice.
  3. Failure criteria need two channels: reaching 95 percent is not enough on its own, the voltage slope and precharge current matter too. With a bus short the voltage never rises and precharge current stays high; a load enabled early during precharge also holds the bus voltage down. Both cases must go to the failure path rather than simply waiting for the timeout.
  4. Timeout protection: give precharge a window of several hundred milliseconds to one or two seconds (typical). On timeout, open the precharge branch immediately, lock the power-up sequence and report a fault. This is the last gate protecting the resistor and the relay.

The controller handles timing and voltage sampling: the ADC reads battery and bus voltage while timers and IO drive the relays. Peripheral resource selection is covered in Which MCU for a Storage BMS? GD32 Selection Guide (Chinese). Continuous current, temperature rise and paralleling after the main MOSFET closes are covered in How to Select Charge and Discharge MOSFETs for a BMS Protection Board; power device pairing for high-voltage relay designs is covered in How to Select Power Devices for Residential Storage and Inverters (Chinese).

Step 4: common mistakes and precharge failure debugging ​

MistakeReal consequenceCorrect handling
Selecting the precharge resistor on steady-state watts onlyOverheats or opens on the first precharge; bus voltage never risesCheck against pulse energy one half C U squared, use wirewound, aluminium-housed or pulse-rated thick film with margin
No precharge timeoutWith a welded relay or hung sequence the resistor stays energised and burns out, possibly catching fireTimeout window plus failure lockout plus fault report; the branch must open on timeout
Judging voltage level only, not slope and currentWastes the timeout on a bus short, or a load enabled early causes a false successTwo-channel criteria: voltage threshold plus slope or precharge current
Sharing the precharge relay with the main relayEither no current limiting during precharge, or small contacts carrying large current; neither worksIndependent branch: precharge relay plus resistor in parallel with the main relay
No protection on the precharge branchSurge or reverse connection kills the branch first and the whole power-up sequence failsProtect the branch to the same standard as the main path, with TVS and reverse protection

Debug order for a failed precharge: check the resistor first (overheating or open circuit usually means missing timeout protection or insufficient pulse rating) → then the relay (voltage across the contacts tells you whether it is welded or not pulling in; check the coil drive level) → and finally timing and criteria (is bus voltage sampling accurate, is the 95 percent threshold set too low, is the load enable timing too early). Verify voltage and current waveforms item by item with a multimeter and scope before changing anything. Do not simply fit a larger resistor — a change in resistance sends you back to recalculate the surge and the time constant.

FAQ ​

Q1: How do I select a BMS precharge resistor, and how do I calculate value and power? ​

Derive the value from the target precharge current: R is approximately (battery voltage minus initial bus voltage) divided by precharge current. Low-voltage BMS designs commonly limit precharge current to 1 to 5 A: about 15 ohms on 48 V limited to 3 A, about 30 ohms on 96 V at 3 A, and about 60 ohms on a 300 V class platform at 5 A. Power needs two calculations: pulse energy from E is approximately one half C U squared, because the resistor and capacitor each dissipate half when charging from zero to battery voltage, giving about 1.2 J for 48 V with 1000 microfarads and tens of joules on high-voltage platforms, so the resistor needs an adequate pulse rating (wirewound, aluminium-housed or thick film); and steady-state power from P is approximately V squared divided by R under worst-case branch failure, backed by a precharge timeout so a welded relay cannot burn the resistor out. Values follow real capacitance, timing requirements and measurement on the complete product.

Q2: How large should the precharge current be, and how long should precharge take? ​

Precharge current is set by bus capacitance together with allowed power-up time; bigger is not better. Higher current raises resistor pulse energy and contact stress; lower current lengthens power-up. Common practice limits inrush to a few amperes (typically 1 to 5 A in low-voltage BMS). The time constant is tau = R C, and reaching about 95 percent of battery voltage takes roughly 3 tau: for 48 V, 1000 microfarads and 15 ohms, tau is about 15 ms and 95 percent takes about 45 ms; larger capacitance scales up. Engineering practice sets a timeout window of several hundred milliseconds to one or two seconds, treating a timeout as failure with the sequence locked out. Current and time must be calculated from capacitance, resistor pulse rating and the power-up timing requirement.

Q3: What happens if I close the main relay or main MOSFET without precharge? ​

The battery charges the bus capacitor through milliohm-level wiring and contact resistance, so inrush is theoretically battery voltage divided by total loop impedance. Taking a few tens of milliohms on a 48 V platform, instantaneous current reaches the order of a thousand amperes (contact bounce and loop inductance reduce it, but it still far exceeds device and contact capability). Three typical consequences: main relay contacts weld from the inrush and never open again; the main path MOSFET is damaged beyond avalanche or surge rating; and the bus voltage dips sharply, triggering undervoltage protection or resetting the controller. Precharge is therefore almost mandatory in the power-up sequence for BMS and inverter products with large bus capacitance, and can only be omitted when bus capacitance is very small or the topology has inherent soft-start capability.

Q4: Can the precharge relay and main relay be shared? How do I debug a precharge failure? ​

Sharing is not recommended. The precharge branch exists to limit current and uses a small-current relay or a MOSFET in series with a resistor, while the main relay must carry continuous charge and discharge current. Sharing means either a large relay with no limiting during precharge, because the resistor is not in the main path, or precharge current permanently through small main relay contacts; neither works. The correct architecture is an independent branch of precharge relay plus precharge resistor in parallel with the main relay: charge first, then close, then disconnect. Debug in three directions: the resistor (overheating or open circuit usually from missing timeout protection or an insufficient pulse energy rating); the relay (welded contacts or failed coil drive, judged by measuring voltage across the contacts); and timing plus criteria (inaccurate bus voltage sampling, too high a threshold, or a load enabled early holding the bus voltage down). Verify voltage and current waveforms item by item with a multimeter and scope before changing the design.

Contact us ​

For selection review of CR Micro low-voltage MOSFETs and diodes in precharge and main paths, assessment of precharge resistor and power-up timing proposals, or a complete power and protection device BOM with sample testing, contact us.

Shenzhen Intek Technology Co., Ltd — electronic component distributor and system solution provider Phone / WeChat: 136-3264-8484 Address: 4F, Building 2, Jingwei Center, No. 309 Ping an Avenue, Pinghu Street, Longgang District, Shenzhen Website: www.intek.vip


Disclaimer: This article is technical education and industry exchange for reference only and is not selection, procurement or other commercial decision advice. Inrush current orders of magnitude, precharge resistor values and pulse energies, precharge current and timeout windows quoted here are typical industry ranges or order-of-magnitude estimates; real values vary significantly with battery chemistry, bus capacitance, topology and device specification. Final design must follow your own circuit calculation, the ratings in the manufacturer datasheet, and measurement on the complete product.