Tool/software:
I have been working on the BQ24725A for a while but there is a problem.
It works unstable, sometimes it works in some unknown cases, sometimes not.
So I need to check if the software configuration is good and if there is any other requirement for its charging to work.
Could you please check if the following configurations are suitable and inform me if another scenario or something else is needed?
(Parameters not set are default)
bq24725a_init(&bq24725a, BQ24725A_ADDRESS); bq24725a_read_charge_option_register(&bq24725a); bq24725a_read_charge_voltage_register(&bq24725a); bq24725a_read_charge_current_register(&bq24725a); bq24725a_read_input_current_register(&bq24725a); bq24725a.registers.charge_current_register.bits.dachg0 = 0; //1024 -> 128 ma bq24725a.registers.charge_current_register.bits.dachg1 = 0; bq24725a.registers.charge_current_register.bits.dachg2 = 0; bq24725a.registers.charge_current_register.bits.dachg3 = 0; //default bq24725a.registers.charge_current_register.bits.dachg4 = 0; bq24725a.registers.charge_current_register.bits.dachg5 = 1; //2048mA bq24725a.registers.charge_current_register.bits.dachg6 = 0; bq24725a.registers.charge_voltage_register.bits.dacv_0 = 0; bq24725a.registers.charge_voltage_register.bits.dacv_1 = 0; bq24725a.registers.charge_voltage_register.bits.dacv_2 = 0; bq24725a.registers.charge_voltage_register.bits.dacv_3 = 0; bq24725a.registers.charge_voltage_register.bits.dacv_4 = 0; bq24725a.registers.charge_voltage_register.bits.dacv_5 = 0; bq24725a.registers.charge_voltage_register.bits.dacv_6 = 0; bq24725a.registers.charge_voltage_register.bits.dacv_7 = 0; bq24725a.registers.charge_voltage_register.bits.dacv_8 = 1; //4096mA bq24725a.registers.charge_voltage_register.bits.dacv_9 = 1; //8192mA bq24725a.registers.charge_voltage_register.bits.dacv_10 = 0; bq24725a.registers.input_current_register.bits.daciin_0 = 0; bq24725a.registers.input_current_register.bits.daciin_1 = 0; bq24725a.registers.input_current_register.bits.daciin_2 = 0; // 512 - default bq24725a.registers.input_current_register.bits.daciin_3 = 0; bq24725a.registers.input_current_register.bits.daciin_4 = 0; bq24725a.registers.input_current_register.bits.daciin_5 = 1; //4096mA bq24725a.registers.charge_options_register.bits.acoc_threshold_adjust = 0b10; // 1 -> 0 bq24725a.registers.charge_options_register.bits.fault_hi_comparator_threshold_adjust = 0; bq24725a.registers.charge_options_register.bits.emi_sw_freq_adjust = 1; // 0-> 1 bq24725a.registers.charge_options_register.bits.emi_sw_freq_enable = 1; // 0 -> 1 bq24725a.registers.charge_options_register.bits.watchdog_timer_adjust = 0; // 1 -> 0 bq24725a.registers.charge_options_register.bits.charge_inhibit = 0; // 1 -> 0 bq24725a_write_charge_option_register(&bq24725a); bq24725a_write_charge_voltage_register(&bq24725a); bq24725a_write_charge_current_register(&bq24725a); bq24725a_write_input_current_register(&bq24725a);
Fatih YAZMAN
Thank you.