On BYD vehicles, DTC B16C0 indicates a front passenger Occupant Classification System (OCS) sensor fault, not an internal SRS ECU fault — Seal U
On BYD vehicles, DTC B16C0 indicates a front passenger Occupant Classification System (OCS) sensor fault, not an internal SRS ECU fault.
The system detects seat load status using a capacitive or piezoresistive pressure-sensing membrane inside the front passenger seat cushion.
It distinguishes between an adult, a child, or an unoccupied seat to control the front passenger airbag deployment strategy (deployment decision, timing, and force).
When the SRS ECU detects an OCS sensor signal open circuit, short circuit, out-of-range value, or incomplete calibration, it sets this DTC and illuminates the airbag warning lamp.
This fault creates an extreme safety risk: the system may incorrectly identify the seat as unoccupied and disable airbag deployment, or erroneously deploy the airbag when a child seat is installed.
This safety hazard requires immediate repair.
- 1Oxidation, loose connection, or poor contact at the yellow 2-pin harness connector under the seat, causing signal interruption or abnormal resistance.
- 2Prolonged chafing between the wiring harness and the metal seat frame damages the insulation, causing a short to ground or a short to power.
- 3OCS sensor mat cut, folded, or physically damaged during front passenger seat modification (leather retrimming, foam replacement).
- 4Failure to perform the OCS (Occupant Classification Calibration) procedure after replacing the seat assembly or airbag ECU, resulting in an unwritten sensor ID or uncalibrated weight threshold.
- 5Sensor body internal circuit aging, corrosion from water ingress, or capacitor/resistor value drift causes the output signal to exceed the ECU-recognized threshold range (2.5kΩ-3.0kΩ is the normal no-load value).
- 1Connect the VDS2000 or X431 diagnostic tool and access the SRS system to read the fault code and freeze frame data. Check the 'Passenger Seat Status' and 'OCS Sensor Resistance' values in the data stream to confirm whether the fault is permanent or intermittent.
- 2Disconnect the yellow connector under the front passenger seat (usually located ahead of the seat slide rail). Inspect the pins for oxidation or backing out. Clean the pins with electrical contact cleaner and apply conductive grease. Measure the resistance between the connector terminals (normal no-load resistance is 2.5 kΩ–3.0 kΩ; resistance changes when occupied).
- 3Inspect along the seat wiring harness routing to the floor harness connection point. Pay special attention to the contact areas between the harness, seat frame, and slide rails. If the harness shows wear or damaged insulation, cut out the damaged section and solder an extension wire. Apply heat-shrink tubing and waterproof tape for double-layer insulation. Re-secure the harness with cable ties, maintaining a clearance of at least 20mm.
- 4If wiring harness continuity is normal but sensor resistance is abnormal (infinite, shorted, or a fixed value that does not change with pressure), replace the front passenger seat cushion assembly (including the integrated OCS sensor mat). Do not disassemble the sensor mat separately for repair.
- 5After replacing the component or repairing the wiring harness, enter the diagnostic tool 'Special Functions' → 'Passenger Classification System Calibration'. Follow the prompts to place standard weights of 5kg (simulating a child seat) and 75kg (simulating an adult) in sequence to complete the sensor zero-point and full-scale calibration.
- 6Clear the fault code and perform a 20-minute dynamic road test (including bumpy roads). Confirm the instrument cluster airbag warning light turns off, the data stream seat status correctly switches between 'Empty' and 'Occupied' based on occupancy, and the fault code does not return.
Oxidised wiring harness connector on Tang DM caused intermittent fault
Han EV OCS uncalibrated after accident repair
Aftermarket seat modification on Qin Pro caused sensor damage
Song Plus DM-i wiring harness chafing against frame