What does it mean?
B1546 is a Body (airbags, seat belts, body electronics) fault code. It indicates: Occupant classification-ECU for communication system .
Symptoms
- Seat drives continuously in one direction until it reaches the stop, regardless of the switch
- Seat adjustment completely inoperative in the affected direction
- Module stays awake with the key out, causing a parasitic drain and a flat battery
- Seat motor gets hot or the drive mechanism is damaged by continuous running
- On the communication variant, the scan tool cannot reach the occupant classification unit and the airbag lamp is lit
Likely causes
- Seat direction switch wire chafed against the seat frame or floor pan, pulling the input to ground
- Bent or displaced connector terminal contacting the ground pin under the seat
- Water and corrosion in the under-seat connector after a wet carpet or a leaking door seal
- Switch stuck mechanically or shorted internally, holding the input low
- Loom crushed by the seat rail at one end of the travel
- Seat module input stage pulled low internally
- On applications where this code refers to the occupant classification system, a communication fault on the bus serving the OCS control unit
How to fix it
- Unplug the seat direction switch and measure the input wire to ground: a near-zero resistance with the switch removed points to the harness
- Move the seat through its full travel while measuring, since many shorts only appear at one end of the rail
- Inspect the under-seat connectors for water, corrosion and terminals pushed out of position
- Check the loom where it passes the seat frame and any sharp bracket, and look for damage from cargo stored under the seat
- Test the switch on its own for continuity to ground in the released position
- Repair the harness and re-route it clear of the rail; replace the switch if it ohms low internally, module last
- Where the code refers to the occupant classification communication circuit, check the unit power and ground, then measure the bus wiring and its connector under the seat