This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

BQ76942: AFE short-circuit protection (SCD) false triggering

Part Number: BQ76942
Other Parts Discussed in Thread: BQSTUDIO

Hello TI team,

I found SCD protection in BQ76942 is trigged by mistake, the short-circuit protection threshold is 120A, but during the test, there will be a false alarm SCD phenomenon, the maximum current of the load connected during the period is 3A, and the CC2 current sampling does not exceed 3A.

When an SCD fault is triggered, the CHG and DSG FETs are disconnected.

I try to increase the Protections:SCD:Threshold to 100mV (resistance 0.5 milliohms, i.e. short-circuit current threshold 200A), and it will still trigger SCD.

When I turn off the SCD function, the behavior does not occur.

The following image is the value of the safety status A that I read back register when debugging:

The relevant register configuration for the protection function is as follows:

//Enabled Protections A datasheet146 OCC SCD OCD1
u8WriteBuff[0] = 0x80;
ret_fg = bq76942_AFE_WRITE_FUNC(MEM_ENABLED_PROTECTIONS_A,1,u8WriteBuff, SUBCOMMAND);
delay_ms(55);

//Enabled Protections B datasheet146 COV CUV
u8WriteBuff[0] = 0x00;
ret_fg &= bq76942_AFE_WRITE_FUNC(MEM_ENABLED_PROTECTIONS_B,1,u8WriteBuff, SUBCOMMAND);
delay_ms(55);

//Enabled Protections C datasheet148 Host Watchdog Fault
u8WriteBuff[0] = 0x00;
ret_fg &= bq76942_AFE_WRITE_FUNC(MEM_ENABLED_PROTECTIONS_C,1,u8WriteBuff, SUBCOMMAND);
delay_ms(55);

//CHG FET Protections A datasheet148 OCC
u8WriteBuff[0] = 0x98; 
ret_fg &= bq76942_AFE_WRITE_FUNC(MEM_CHG_FET_PROTECTIONS_A,1,u8WriteBuff, SUBCOMMAND);
delay_ms(55);


//CHG FET Protections B datasheet148
u8WriteBuff[0] = 0x00;
ret_fg &= bq76942_AFE_WRITE_FUNC(MEM_CHG_FET_PROTECTIONS_B,1,u8WriteBuff, SUBCOMMAND);
delay_ms(55);

//CHG FET Protections C datasheet149
u8WriteBuff[0] = 0x00;
ret_fg &= bq76942_AFE_WRITE_FUNC(MEM_CHG_FET_PROTECTIONS_C,1,u8WriteBuff, SUBCOMMAND);
delay_ms(55);
#endif

//DSG FET Protections A datasheet150 OCD1 SCD
u8WriteBuff[0] = 0x80;
ret_fg &= bq76942_AFE_WRITE_FUNC(MEM_DSG_FET_PROTECTIONS_A,1,u8WriteBuff, SUBCOMMAND);
delay_ms(55);

//SCD:Threshold datasheet171 SCD
u8WriteBuff[0] = 3; //60mV(120A)
ret_fg &= bq76942_AFE_WRITE_FUNC(MEM_SCD_THRESHOLD,1,u8WriteBuff, SUBCOMMAND);
delay_ms(55);

//SCD:Delay datasheet171 SCD
u8WriteBuff[0] = 17; //240us
ret_fg &= bq76942_AFE_WRITE_FUNC(MEM_SCD_DELAY,1,u8WriteBuff, SUBCOMMAND);
delay_ms(55);


//DSG FET Protections B datasheet150
u8WriteBuff[0] = 0x00;
ret_fg &= bq76942_AFE_WRITE_FUNC(MEM_DSG_FET_PROTECTIONS_B,1,u8WriteBuff, SUBCOMMAND);
delay_ms(55);

//DSG FET Protections C datasheet151
u8WriteBuff[0] = 0x00;
ret_fg &= bq76942_AFE_WRITE_FUNC(MEM_DSG_FET_PROTECTIONS_C,1,u8WriteBuff, SUBCOMMAND);
delay_ms(55);