Dear:
my project need update a I2C-eeprom(32K bytes),the data is sent from the app on a Smartphone,then the DA14580 write the data into the eeprom. also I need the battery ,tx power,and alert service, So,I want to work base on the Smarttag ref-design.
I add the I2C driver to the Smarttag and test it, and I found that I can not use the I2C driver in funtion: app_proxr_timer_handler(),but I can use it in funtion:proxr_alert_ind_handler() and app_proxr_enable(),is it right? and In which funtion I can use the I2C driver in the Smarttag? also there are many wait() funtiaons in the driver,if there have some problems on the eeprom, the CPU will stop at the wait() funtion ,so if I want the progam be robust,I need to change the I2C driver? or there have other timeout handle funtions ?
I found GPIO state changing in the funtion: app_proxr_timer_handler() ,why can't use the I2C driver in this funtion?
I set the adv_interval = 0x0CF0 and don't let the DA14580 stop advertising,is it the lowest power consumption setting to let the DA14580 continuously advertising?
I fonud DA14580 go into deep sleep when not advertise in funtion:app_adv_func,so I think this is the lowest power consumption setting to let the DA14580 continuously advertising,am I right?
Can I set the adv_interval to a bigger value? (the BLE spec 2500ms is max?),also if I set the Connection latency to 20,then I found that the power consumptionis lower than the advertising state(2500ms interval).
If there is no data transfer for 30s,I want to let the da14580 disconnect to the app, how to implement?
The Smattag doesn't have data transfer profiles to let me sent the 32K bytes from Smartphone to the da14580, so I need to creat a new one? or Is there have profiles I can use? which is the efficiently way?
would you please give some advices to me? thanks a lot.
Hi There, why do you want to base this on the smart-tag reference design ? is proximity an important element of your application ? What you are describing is quite comlpex : there is no simple way to do what you are requesting without extensive development work. We can guide you to a number of documents if you can clarify your requirements. BR JE_Dialog
OK......
my project need DA14580 to write a I2C-eeprom(32K bytes) ,the 32K bytes data is sent from the app on a Smartphone,then the DA14580 write the data into the eeprom. also I need the battery ,tx power,and alert service.
Would you please give me some advices?
also I think some of my questions above is not so complex ,woud you please give some some help?
1. I set the adv_interval = 0x0CF0 and don't let the DA14580 stop advertising(in Smarttag),is it the lowest power consumption setting to let the DA14580 continuously advertising?
2. I fonud DA14580 go into deep sleep when not advertise in funtion:app_adv_func,so I think this is the lowest power consumption setting to let the DA14580 continuously advertising,am I right?
但是如果我设置Connection latency to 20,then I found that the power consumptionis is lower than the advertising state(2500ms interval), so I think maybe the power consumptionis in advertising state(2500ms interval) still can get lower.
3. If there is no data transfer for 30s,I want to let the da14580 disconnect to the app, how to implement it?
Hi xf622
You should use the already implemented profiles for the services you mentioned and create your own profile for your data transfer service. You can use the custom profile doc to accomplish that, doc AN-B-29. The power consumption will decrease as long as you increase the value of advertising intervals or latency in a connection. Of course there are limitations in how much you can increase latency and advertising interval, I think is about 4s in connection latency and 10.24s in maximum advertising interval.
You can set a timer after your last data reception. When the timer elapses you can call app_disconnect() to issue a GAPC_DISCONNECT_CMD to disconnect from the device. Also you can advice the keyboard application for using an I2C-EEPROM.
http://support.dialog-semiconductor.com/reference-design/keyboard
Hope it helps
Thanks MT_dialog