DA14583 scanning the advertisement package

4 posts / 0 new
Last post
liuluan002
Offline
Last seen:3 months 3 weeks ago
加入:2015-11-27 14:24
DA14583 scanning the advertisement package

Hi Dialog,

I am testing my code on the scanning for the DA14583 continuously, the things that I have found the power consumption is more than I thought. It is 5.07mA around. Is there any method to reduce the power?

My scanning part is doing the following things:

cmd->role =GAP_OBSERVER_SCA;

void app_scan(void)
{
struct gapm_start_scan_cmd *cmd = KE_MSG_ALLOC(GAPM_START_SCAN_CMD,
TASK_GAPM, TASK_APP,
gapm_start_scan_cmd);

cmd->op.code = GAPM_SCAN_PASSIVE;

cmd - >间隔= 8000;
cmd->window = 8000;
cmd->mode = GAP_GEN_DISCOVERY;
cmd->filt_policy = SCAN_ALLOW_ADV_ALL;
cmd->filter_duplic = SCAN_FILT_DUPLIC_DIS;
// Send the message
ke_msg_send(cmd);
}

Thank you.

Device:
MT_dialog
Offline
Last seen:1 week 4 days ago
工作人员
加入:2015-06-08 11:34
Hi liuluan002,

Hi liuluan002,

Around 5mA is the peak current when the 580 is scanning the average current should be less, if you set your interval same as your window you will have approximatelly an avg current as big as your peak current. Try to experiment with different values on the interval and the window and make sure that your interval is equal or less than your window. This should lower your power consumption.

Thanks MT_dialog

liuluan002
Offline
Last seen:3 months 3 weeks ago
加入:2015-11-27 14:24
thank you for your reply, my

thank you for your reply, my application situation is broadcast for several times for different packages, then I turn off the broadcasting by calling app_adv_stop(). Does the system go to the sleep after I turned off the broadcasting? Do I need to do more things to optimize the energy cost?

MT_dialog
Offline
Last seen:1 week 4 days ago
工作人员
加入:2015-06-08 11:34
Hi liuluan002,

Hi liuluan002,

If you have enabled the sleep mode and there is no other BLE event for the 580 to serve, yes, when there is no ongoing activity your device should fall asleep. It will wake up periodically every 10 seconds and go back to sleep, if you call the arch_ble_ext_wakeup_on() you can suppress that awakening. Other than than that i dont think that there's anything else to do.

Thanks MT_dialog