DA1468x - External Battery Charger (1A)

4 posts / 0 new
Last post
bobspam@free.fr
Offline
Last seen: 3 days 16 hours ago
Joined: 2018-06-20 08:07
DA1468x - External Battery Charger (1A)

Hello

 

The battery charger provided by the DA1468x is too slow for my application and I would like to check with you if I can use an external charger while keeping the USB features of the DA1468x.

- Main idea is to use MCP73830 1A that uses 2 GPIOs : enable / status

- This would imply to use the dg_configUSE_USB_CHARGER (0) flag to avoid enabling internal charger and to manually drive gpios to allow enabling the charger

 

I could figure out that when using dg_configUSE_USB_CHARGER the only callbacks that are called are "usb attached" and "usb enum"

 

Can you confirm to me that power is available from charger when usb_start_enumeration_cb() is called ?

Are there any way to know the maximum available power after enumeration so I can check I can get 1A from the charger ?

 

Thank you in advance

 

Best Regards

Device: 
PM_Dialog
Offline
Last seen: 9 hours 14 min ago
Staff
Joined: 2018-02-08 11:03
Hi Bob,

Hi Bob,

DA14680 contains a dedicated on-chip charger which allows the chip to natively charge rechargeable batteries over USB. The charger is up to 5.0 V with programmable curves. Please read the 4.1.6 Charger section in the datasheet. There is a dedicated Pre-Charge and Charge SW FSM. If you would like to add changing functionality, you should follow the AN-B-035 document (link is provided below). You should follow standard procedure and the changing should be done over USB.

https://www.dialog-semiconductor.com/sites/default/files/an-b-035_da1468x_battery_charging_1v1.pdf

Thanks, PM_Dialog

bobspam@free.fr
Offline
Last seen: 3 days 16 hours ago
Joined: 2018-06-20 08:07
Hello

Hello

 

Thank you for the application note.

I am targetting an application requiring 7Ah of battery capacity and 6 weeks of autonomy. I am out of spec of the internal battery charger (max 500mAh) so I do need to add an external one. For cost reasons I still wish to use the USB features provided by the DA1468x thus the dg_configUSE_USB_CHARGER (0) match my needs.

I could test it with a set of usb chargers and I coud figure out that most of the time the state machine stays in USB_CHARGER_CONNECT_PENDING state after enumeration ( usb_start_enumeration_cb() is called before that state is reached so I can not use that hook ). I tried to plug the device on samsung chargers, chinese chargers and the result is the same. I tried to plug it on a usb hub and the state machine stays stuck in USB_CHARGER_ATTACHED which means that the hub does not provide charging capacity.

 

Can you confirm to me that I can rely on this state to manually drive an external battery charger using the following ? I am not sure the USB negotiation is being achieved properly.

if (usb_charger_state >= USB_CHARGER_SDP && usb_charger_state < USB_CHARGER_PAUSED) {

// activate external battery charger

}

 

Thank you

 

PM_Dialog
Offline
Last seen: 9 hours 14 min ago
Staff
Joined: 2018-02-08 11:03
Hi Bob,

Hi Bob,

As I mentioned in my previous reply, the procedure you should follow in order to add changing functionality is described in the application note. Where did you find this if-statement? I would suggest you to modify SDK files. The SDK should be used as it is provided.

Thanks, PM_Dialog