ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

能源效率:BLE设备-何时可连接?

2019-11-18 23:26:16  阅读:239  来源: 互联网

标签:firmware bluetooth-lowenergy ios android


我正在设计自定义BLE设备协议.我的设备将是-体重秤,血压计,健身带之一.

该协议定义了我的Android / iOS应用(Collector)将用于从这些设备之一收集传感器数据的收集过程.

我们可以假设收集器存在的时间是50%,并且正在广播中搜索广播设备以连接并从中收集数据

我的问题是:
在考虑电池电量的情况下,使设备可连接的有效方法是什么?

我目前的做法:

设备是可连接的,如果

>(A)对于某些用户,它的测量值尚未发送,
>(B)用户将其打开(通过踩秤,按按钮或其他操作)

在情况(B)中,设备进行自身广播,例如每1秒可用于连接到收集器

在(A)的情况下,设备广播自身,例如.每5秒可用于连接到收集器

一旦不满足条件(A)/(B),设备便进入睡眠模式-不广播任何内容.

这是通过能源消耗的有效方法吗?还是有更好的做法来实现“设备可见性”?

附言找不到更好的资源来询问该问题,但该问题可以视为编程问题,因为它与固件编程有关

解决方法:

看到我的decision tree.

如果将sleep / off和Start框链接在一起,则代码会运行一个非常高效的无限循环,如果您打开设备或有要共享的数据,它将打开设备.

开始—–

B)用户打开了我吗?

>否:继续到A)
>是:继续进行问题1.和2.

A)我有要发送的数据吗?

>否:如果没有“用户打开”命令并且不需要发送任何数据,则:进入睡眠/关闭状态(大概会导致启动框并重新开始循环)
>是:用户未打开设备,但是有数据要发送;然后:

>如果connection = true->发送数据.
>如果connection = / = true->启动一个计时器,并在接下来的2-5分钟内以1或5秒的固定间隔开始连接循环.

当timer = 2-5min或connection = true时,连接循环结束.
当计时器用尽时,进入关闭/睡眠状态.

注意:为了以防万一,您可能会或可能不想添加错误处理程序以使代码中断到A).

标签:firmware,bluetooth-lowenergy,ios,android
来源: https://codeday.me/bug/20191118/2031934.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有