Dear Dialog team,
We are testing SOC functionality using DA14683 board with pxp_reporter application, DEBUG_SOC and dg_configUSE_SOC are enabled. Battery (3.7V, 500mAH, PKCELL LP503035) is connected to VBAT and Gnd on the board. SDK used is DA1468x_DA15xxx_SDK_1.0.14.1081.
Case 1:
USB1(CHG) is not connected to any power source.
In this case, battery discharges and we query for SOC value for every 2-3 minutes, we get the latest battery percentage.
Please find the attached SOC logs printed on the console in the attached file under section "Start of Discharge SOC values" (page 1).
This case is fine.
Case 2:
USB1(CHG) is connected to power source.
In this case, when we query for SOC value for every 2-3 minutes, we don't get the latest battery percentage, however, battery charges in the background.
Please find the attached SOC logs in the attached file, under section "Start of Charge SOC values" (page 42). From these logs, we observe that SOC value is not getting changed.
However, when we reset the board, we observe that battery percentage is increased significantly. Please refer the SOC logs file, in the attached file under section "Start of Charge reset SOC values" (page 83). This means battery charges in the background.
This case is not fine, as we should know the latest battery percentage value, when the application is running.
Please help us to resolve this case2.
Please let us know for any clarifications.
Best regards
Malli
Hi Malli,
Have you changed any source in the SDK? Are you running the SDK on the EVK board or your target board?
If you can attach JLINK, would you check socf_get_soc_active is called periodically when USB1 is connected?
Please let me know.
Regards,
James
Dear Dialog team,
We are using 14683 EVK board and we didn't modify any code in SDK.
In custom_socf_battery_profile.h file, we modified SOCF_BATTERY_CAPACITANCE from 190 to 500 as we are using 500mAH battery. Even with 190 value, we have this issue.
We try to put printf statement in the beginning of socf_get_soc_active() function to check printf statements in tera term, but we observed board hangs.
Best regards
Malli
Hi Malli,
In my test with 500mAh capacitance, there has been no problem at all.(DA14683 EVK + SDK_1.0.14.1081)
The default charging current in the SDK is set as 60mA.
#define dg_configBATTERY_CHARGE_CURRENT 4 // 60mA
I am wondering if system consume the power from USB almost.
你有没有附加peripherial E设备VK? What is power consumption at discharging state?
Would you test it again with higher charging current like below setting?
#define dg_configBATTERY_CHARGE_CURRENT 10 // 270mA
In the source code, you can add some variable for knowing how many times the function is called.
__RETAINEDstaticint32_t socf_get_soc_active_count;
static int16_t socf_get_soc_active(void)
{
............
socf_accum_charge_count = socf_accum_charge_count + active_count;
socf_get_soc_active_count++;
if(socf_accum_charge_count < 0) {
socf_accum_charge_count = 0;
}
...........
}
...........
static void socf_task(void *pvParameters)
{
...........
printf("[%8ld sec] DLG_SWFG SOC=%4d VOL=%4d COUNT=%ld\r\n", socf_log_time, socf_soc,
vol, socf_get_soc_active_count);
..........
}
I can see below logs,
[ 30 sec] DLG_SWFG SOC= 166 VOL=3933 COUNT=25
[31秒]DLG_SWFG SOC = 166 = 3934数= 26卷
[ 32 sec] DLG_SWFG SOC= 166 VOL=3934 COUNT=27
[ 33 sec] DLG_SWFG SOC= 166 VOL=3935 COUNT=28
(34sec] DLG_SWFG SOC= 166 VOL=3935 COUNT=29
[ 35 sec] DLG_SWFG SOC= 166 VOL=3935 COUNT=30
[ 36 sec] DLG_SWFG SOC= 166 VOL=3936 COUNT=31
[ 37 sec] DLG_SWFG SOC= 167 VOL=3937 COUNT=32
[ 38 sec] DLG_SWFG SOC= 167 VOL=3937 COUNT=33
[ 39 sec] DLG_SWFG SOC= 167 VOL=3937 COUNT=34
[ 40 sec] DLG_SWFG SOC= 167 VOL=3937 COUNT=35
[ 41 sec] DLG_SWFG SOC= 167 VOL=3938 COUNT=36
Please let me know your test result.
Regards,
James
Hi team,
We tested with higher charing setting, #define dg_configBATTERY_CHARGE_CURRENT 10 // 270mA, but issue still remains same.
No peripherial devices are attached to the EVK, only battery is connected to EVK.
socf_get_soc_active() function is called for every 1 sec.
Any other clues to resolve this issue?
Best regards
Malli
Hi Malli,
I have realized you have connected the battery to VBAT and GND on the board. The battery must be connected to COIN and GND. And the switch of daughtboard must be set to COIN for proper operation with the battery.
The VBAT means power supplying from external LDO of mother board. It is not correct for charging and operation with battery.
Regards,
James
Dear Dialog team,
Thank you for your support.
We connected the battery postive pin to daughter board coin holder pin as shown in the the attachment. Is this Ok?
We have clarification on GND connection; Is battery negative pin be connected to GND of daughter board?
We received communication from Dialog distributor to connect battery nagative pin to to 'VBAT-' J18 on the DK mother board. So we are confused which GND we should connect the negative pin.
Please clarify.
Best regards
Malli
Hi Malli,
You have to connect the nagative pin of the battery to GND. If you connect it to VBAT-, current across R1(between SOCP and SOCN) will not happen. It mean coulomb conter would not measure the current and SOC would not be changed at all during charging.
Regards,
James
Hi James,
We have attached DA1468X SoC measurement circuit schematic here. Can you check and let us know if this is correct?
If correct, your statement "battery negative terminal needs to be connected to system GND " seems to be contradcting with the application schematic. Please confirm.
Best regards
Vijay
Hi Malli,
I am sorry that my statement is incorrect. The application schematic is correct.
The nagative pin of batterh must be connected to VBAT-. Do you still have the problem with VBAT-?
Regards,
James
Dear Dialog team,
Thank you for your support.
This works fine.
Best regards
Malli