LTC4162-F Voltage Adjustment Issue


I am using the LTC4162-FAD in a solar powered battery charger that I am working on but I have encountered an issue with changing the "vcharge_setting" on this supposedly adjustable chip.

When the LTC4162 is first powered up my I2C master does the following things:

  • Read "chem_cells_reg" to make sure that the right part is present
  • Write "config_bits_reg" to 6 ("force_telemetry_on" and "mppt_en")
  • Write "vcharge_setting" to 0x11
  • Write "max_cv_time"
  • Write "max_charge_time"

The I2C master reads back each register after setting it to verify that it succeeded. Immediately after setting "vcharge_setting" to 0x11 it is still set to 0x11. However, if I manually query "vcharge_setting" a couple of seconds later the register reads back as 0xF. If I try writing "vcharge_setting" to 0x11 manually after initialisation the behaviour is the same.

After some trial and error I have discovered that if I stop the I2C master from configuring the LTC4162 at power up I can change the value of the "vcharge_setting" register to whatever I like. If I set "vcharge_setting" to 0x11 it will set itself and read back successfully. If I then write "config_bits_reg" to set "force_telemetry_enable", "vcharge_setting" now reads 0xF again. If I disable "force_telemetry_enable" I am once again able to set "vcharge_setting" but upon writing "force_telemetry_enable", "vcharge_setting" is reset to 0xF again. It also appears that plugging the charger input in is enough to cause "vcharge_setting" to change to 0xF.

Is this the expected behaviour? Being the adjustable version I thought you should be able to set "vcharge_setting" to whatever you want. Fortunately 0xF and 0x11 are fairly close so it's not the end of the world but it would be nice to know what is going on. Any input is appreciated.



  • Hi Donald,

    By default, JEITA controls the charge current and charge voltage parameters, overriding the vcharge_setting and charge_current_target bitfields.

    I recommend you change the JEITA settings instead. Assuming you are working at room temperature, you will see the change immediately if you change vcharge_jeita_3 (the charge voltage target for JEITA temperature region 3: 10degC - 40degC). You can set the rest of the JEITA values accordingly.

    You can also turn JEITA off and then vcharge_setting will take control. However, the JEITA feature adds a layer of safety if used correctly, so it's best to use that when possible.


  • Thanks Zack.

    Now that you mention it that makes sense. I seem to have overlooked the fact that the JEITA voltages can be adjusted. I have also been working with the SLA version of the LTC4162 so I think I was expecting the JEITA stuff to work somewhat more like the SLA temperature compensation.