KCU High Side / Low Side Driver module
KCU GEN1 / GEN2 provide integrated high-side driver (HSD) and low-side driver (LSD) modules to support PWM output, load current measurement and channel diagnostics.This article summarizes the HSD/LSD API, diagnostic process and BSW integration methods of KopherBit in KopherSAR Driver Interface.
Summary
KCU provides integrated High Side Driver (HSD) and Low Side Driver (LSD) modules, which can directly drive vehicle actuators such as relays, motors, and lamps.Some channels support PWM output. KopherBit provides standardized API in KopherSAR Driver Interface, including output setting (HS_SetOutput / LS_UpdateOutputState), diagnostic triggering (HS_Diagnosis_Enabler / LS_RunDiagnosis), diagnostic reading (*_GetDiagnosisResult), diagnostic clearing (*_CleanDiagnosis), HSD Functions such as load current measurement (HS_GetLoadCurrent) can be directly integrated into the application layer SWC.
Technical Role
HSD/LSD is the physical interface for automotive ECUs to control actuators:
- High Side Driver (HSD): Connect the power supply (VBATT) to the load and the other end of the load to ground.Commonly used for loads requiring protected power such as relays, lights, and heating elements.
- Low Side Driver (LSD): Connect the other end of the load to ground and power is supplied externally.Commonly used for high-frequency PWM control (such as motor PWM, light dimming).
KopherBit encapsulates HSD/LSD as KopherSAR Driver Interface module (belonging to ECU Abstraction Layer) on KCU GEN1, so that the application layer SWC does not need to directly touch the SPI switching IC or MCU PWM register.
API overview
Low Side Driver (LSD) API
| API | Features |
|---|---|
LS_UpdateOutputState | Update the LSD output state to the temporary memory (subsequently applied to the physical IC by BSW). |
LS_GetOutputStatus | Get the output status of the specified LSD channel from the temporary memory. |
LS_RunDiagnosis | Execute LSD channel diagnosis and store it in temporary memory. |
LS_RunTimeModeCfg | Dynamically configure the LSD pin function during execution (Demo use only). |
LS_GetDiagnosisResult | Get the diagnostic result of the selected LSD channel. |
LS_CleanDiagnosis | Clear diagnostic error status. |
High Side Driver (HSD) API
| API | Features |
|---|---|
HS_SetOutput | Set HSD output status. |
HS_Diagnosis_Enabler | Turn on/off HSD diagnostic function. |
HS_GetLoadCurrent | Get the load current measurement value of the selected HSD channel. |
HS_RunTimeModeCfg | Dynamically configure the HSD pin function during execution (Demo use only). |
HS_GetDiagnosisResult | Get diagnostic information. |
HS_CleanDiagnosis | Clear diagnostic information. |
Architecture
| Hierarchy | Role |
|---|---|
| Application Layer (SWC) | Call the HS_/LS_ API to operate actuators and read diagnostics. |
| KopherSAR Driver Interface | Provides HS_/LS_ standardized API, encapsulating SPI / GPIO details. |
| BSW MCAL (Pwm / Dio / Spi) | Low-level driver corresponding to MCU and switching IC (such as VNF1248FTR, TLE9104SH). |
| Hardware (HSD / LSD IC) | Physical switching IC, responsible for power switching and protection. |
| DEM (Diagnostic Event Manager) | Logs HSD/LSD diagnostic errors as DTCs. |
Key Capabilities
- PWM output: KCU GEN1 LSD 18 channels (including 4×PWM), HSD 10 channels (including 3×PWM); GEN2 LSD 28 channels PWM, HSD 6 channels PWM.
- Load current measurement: HSD provides
HS_GetLoadCurrentto instantly read the channel current, which can be used for load detection or closed-loop control. - Integrated diagnostics: open circuit, short circuit, overheating, overcurrent detection, read back through
*_GetDiagnosisResult, and can be converted into DTC by the application layer. - Temporary memory update mode: LSD adopts the “write first temporary memory → BSW unified refresh” mode to avoid high-frequency SPI writing.
- Execution time configuration: Provide
*_RunTimeModeCfgfor flexible pin switching during the Demo stage (it is recommended to fix it during the configuration stage for mass production).
Engineering Inputs Required
| Input | Purpose |
|---|---|
| Actuator list and current levels | Decide whether to use HSD or LSD, PWM channel assignment. |
| PWM frequency and duty cycle range | Configure PWM module and diagnostic interpretation conditions. |
| Diagnostic requirements | Open circuit/short circuit/overheating/overcurrent detection enable range. |
| DTC mapping | Map channel diagnostic results to DEM DTC. |
| Safety requirements | Whether redundant output, automatic shutdown of over-current, and Failsafe response are required. |
How KopherBit Supports This
- Basic Software: KopherSAR Driver Interface provides standardized HSD / LSD API.
- Configuration Tool: KopherConfig Export channel assignments and diagnostic parameters as BSW configuration.
- Diagnostic integration: The DEM module can directly receive HSD/LSD diagnostic results and convert them into DTC, which can then be read out by the UDS 0x19 service.
- VERIFICATION: KCU Platform Testbench provides actuator loop and diagnostic trigger testing.
FAQ
How to choose between HSD and LSD?
Need a protected power connection (such as exterior lights, to avoid continuous power supply when the line is short-circuited to ground) → choose HSD; need high-frequency PWM and higher efficiency (such as motor PWM) → choose LSD.The actual choice is also related to ECU wiring, fuse design.
Are *_RunTimeModeCfg available for mass production?
Not recommended.*_RunTimeModeCfg provides flexible pin switching function during the Demo/development stage, but changing the configuration during execution will increase debugging difficulty and failure modes.For mass production, it is recommended to fix the channel function during the BSW configuration stage.
Why does LSD use temporary memory updates instead of direct writes?
The LSD channel is often connected to an external switching IC through SPI. If LS_UpdateOutputState is written immediately every time, it will cause an explosion of SPI traffic.BSW uniformly refreshes temporary values to the entity IC in a cyclic task, which can control SPI utilization and avoid repeated writing.
What is the accuracy of HSD load current measurement?
Accuracy depends on the HSD IC used.KopherBit mainly uses VNF1248FTR, TLE9104SH and other built-in current measurement ICs, with an error of about ±10–15% (full scale).The details are subject to the actual IC datasheet selected.
Are DTCs generated automatically after a diagnostic is triggered?
The corresponding EventId and diagnostic conditions need to be configured in KopherSAR DEM.The application layer calls Dem_SetEventStatus or sets an automatic link in BSW, and DEM converts the diagnostic results into DTC.
JSON-LD
{
"@context": "https://schema.org",
"@type": "TechArticle",
"headline": "KCU High Side / Low Side Driver module",
"description": "KCU GEN1/GEN2 provides integrated HSD / LSD modules that support PWM, load current measurement and channel diagnostics through the KopherSAR Driver Interface standardized API.",
"url": "https://kopherbit.com/knowledge/low-side-high-side-drivers/",
"datePublished": "2026-05-09",
"dateModified": "2026-05-09",
"inLanguage": "zh-TW",
"keywords": ["High Side Driver", "Low Side Driver", "HSD", "LSD", "PWM", "actuator"],
"articleSection": "Controller",
"author": { "@type": "Organization", "name": "KopherBit", "url": "https://kopherbit.com" },
"publisher": { "@type": "Organization", "name": "KopherBit", "logo": { "@type": "ImageObject", "url": "https://kopherbit.com/logo.png" } }
}