标准版
#第六届立创电赛#超低功耗可接入HomeKit的BLE传感器与无线按钮

创建时间:3年前

视频

描述

<h1>超低功耗可接入HomeKit的BLE传感器与无线按钮</h1> <p><img src="//image.lceda.cn/pullimage/zsQrDQ9DMS2eIDVUarngTe7zr8kPYZwQxLTN8JXN.jpeg" alt="LC6-主图v3.jpg"></p> <h3>一、功能介绍</h3> <p>本项目设计了BLE多合一传感器与双键无线按钮,平均电流10.8、6.2uA,CR2032电池续航1.9年、3.2年 。</p> <p>通过自制的ESP32网关接入苹果HomeKit,成为苹果家庭智能家居的组成部分。</p> <ol> <li><strong>BLE多合一传感器</strong>:支持温湿度、光照、门磁,由网关接收数据并接入HomeKit。可通过网关查询历史数据。门磁状态可用于配置HomeKit家庭自动化。</li> <li><strong>BLE双键无线按钮</strong>:支持单击、双击、长按事件,由网关接收数据并接入HomeKit,接入后为可编程无线按钮(STATLESS PROGRAMMABLE SWITCH),可自定义事件功能,如控制其他配件状态(灯开关/亮度等)、启用场景、或执行快捷指令。</li> <li><strong>TLSR825X烧录器</strong>:TLSR825X(TLSR8250)为本项目使用的BLE主控芯片,硬件上使用安信生产的该芯片对应的模块TB-03F和TB-04。该烧录器可用于对TLSR825X的烧录调试,另引出电流测量引脚以测量功耗。烧录器中使用了<strong>航顺芯片HK7530</strong>,购买于立创商城(编号:C495381)。</li> <li><strong>ESP32 HomeKit网关</strong>:ESP32为支持蓝牙(传统蓝牙+BLE)与WiFi的双模芯片,本项目未对ESP32网关制作专属硬件,使用通用的ESP32芯片模组或开发板,软件上使用ESP32作为HomeKit网关,接收BLE Beacon数据,通过WiFi桥接至苹果HomeKit。具备体系化的桥接多数量、多类型BLE节点的能力,支持多类型数据,数据协议灵活易扩展,可本地存储节点历史数据。目前支持桥接的HomeKit数据属性包括:温度、湿度、光照、电量、接触(contact)、动作(motion)、存在(occupancy)、按键(stateless_programmable_switch)。</li> </ol> <h4>技术框图</h4> <p><img src="//image.lceda.cn/pullimage/9sFUsK6ODuSCzuLiqx1SpwyJXxmpqXKYVtXvmNIh.png" alt="LC6-技术框架新-裁剪.png"></p> <h4>主要特点</h4> <ul> <li><strong>国产主控</strong>:主控采用国产芯片,泰凌微TLSR8250和乐鑫ESP32</li> <li><strong>超低功耗</strong>:BLE节点平均电流10.8、6.2uA,CR2032电池续航1.9年、3.2年</li> <li><strong>布局紧凑</strong>:传感器PCB布局设计紧凑,主体外壳尺寸迷你</li> <li><strong>协议灵活</strong>:数据协议设计灵活,易扩展并接入更多类型传感器</li> <li><strong>蓝牙网关</strong>:使用WiFi与蓝牙双模芯片ESP32作为网关,接入HomeKit</li> </ul> <h4>实物图片</h4> <p><img src="//image.lceda.cn/pullimage/GTcqRp9HPUyhibM5eFFvLxAZTgd3q8ZxW4MLlH1S.jpeg" alt="LC6-实物图v2.jpg"></p> <h3>二、项目属性</h3> <p>项目为首次公开,软硬件为原创设计,未曾参与其他比赛,未曾在学校参加过答辩。</p> <h3>三、开源协议</h3> <p>CC-BY-NC-SA 3.0</p> <p>本项目的HomeKit实现属于Apple公开的非商用版HomeKit Accessory Protocol (Non-Commercial Version),相关协议见<a href="https://developers.apple.com/homekit/faq/" target="_blank">developer.apple.com</a> 。</p> <h3>四、硬件部分</h3> <p>本项目硬件使用立创EDA进行PCB绘制,使用嘉立创进行PCB打样,PCB上均带有本次大赛logo。</p> <p><img src="//image.lceda.cn/pullimage/4O9fbcHsKkpg5q6iKFeiKonj7n0auLIhwyCS5tl5.png" alt="LC6-PCB.png"></p> <h4>1. 多合一传感器</h4> <ul> <li>BLE主控:国产泰凌微TLSR8250,低功耗,使用安信可TB-03F、TB-04模块</li> <li>多合一:温湿度、光照、门磁,单PCB集成全部传感器,可根据实际需求选择传感器全部焊接或部分焊接</li> <li>温湿度:SHTC3,休眠电流0.3uA(典型值),瑞士Sensirion高精度传感器,精度±0.2℃ / ±2%RH,范围-40~125℃ / 0~100%RH,工作电压1.62 - 3.6 V</li> <li>光照:BH1750,休眠电流0.01uA(典型值),ROHM数字环境光传感器,支持0.11lx精度,范围1 - 65535 lx,工作电压2.4 - 3.6V</li> <li>霍尔(门磁):MT6131AT,平均电流1.0uA(典型值),MagnTek麦歌恩全极性霍尔传感器,采样率20Hz,工作电压1.65V~5.0V</li> <li>紧凑布局:外壳尺寸长34x宽(24+8)x厚9.4mm(含磁铁),对比米家门窗传感器2尺寸为34x32.7x14.5</li> </ul> <h4>2. 双键无线按钮</h4> <ul> <li>BLE主控:国产泰凌微TLSR8250,低功耗,使用安信可TB-03F</li> <li>超薄设计:外壳尺寸长104x宽28x厚8.4mm,厚度与手机相当,长度10cm左右兼顾了握持手感</li> <li>隐藏式指示灯:按钮蓝色指示灯为隐藏式设计,合理利用了3D打印材料的透光特性,平时状态前面板为一体平面,指示灯亮时亮光可见。</li> </ul> <h4>3. TLSR825X烧录器</h4> <ul> <li>TLSR825X(TLSR8250, TLSR8253, TLSR8258等)为本项目使用的BEL主控芯片,硬件设计上使用安信生产的该芯片对应的模块TB-03F和TB-04。</li> <li>因目前尚无市售的TLSR825X专用烧录器,设计制作了本款烧录器,方便烧录调试与功耗测量。</li> <li>烧录接口与本项目的多合一传感器、无线按钮预留烧录接口一致,可直接使用。</li> <li>预留VIN和VOUT接口用于测量TLSR825X电流,开关开启时芯片直连3V用于烧录于调试,开关关闭时需由VIN向VOUT供电,使用万用表电流档或其他测电流设备接入这两个引脚即可测量TLSR825X电流。</li> <li>本烧录器中使用<strong>航顺芯片HK7530</strong>,购买于立创商城(编号:C495381),该芯片为LDO芯片,输出电压3.0V,符合TLSR825X的标准电压。</li> <li>支持安信可提供的自动烧录脚本进行烧录,详见<a href="https://github.com/Ai-Thinker-Open/TBXX_Flash_Tool" target="_blank">TBXX_Flash_Tool</a>。</li> </ul> <h4>4. 外壳</h4> <p>外壳使用Fusion 360绘制,使用3D打印制作实物。</p> <p><img src="//image.lceda.cn/pullimage/sZJ2XS0lVZMSf1516TlJrMkUpLP3LXomdWz4WfZQ.png" alt="LC6外壳_主要.png"></p> <p><strong>多合一传感器</strong>:长34x宽(24+8)x厚9.4mm(含磁铁),对比米家门窗传感器2尺寸为34x32.7x14.5。</p> <p><strong>双键无线按钮</strong>:长104x宽28x厚8.4mm,厚度仅8.4mm与手机相当,长度10cm兼顾了握持手感。</p> <p><strong>固定方式</strong>:二者均由卡扣固定,双键无线按钮预留M2螺丝孔(长6mm)用于加强固定。</p> <h3>五、软件部分</h3> <p><img src="//image.lceda.cn/pullimage/eVtfbaJxjZBCEXiHqS2YhRto6VV0XnnzL7QjQVja.jpeg" alt="LC6-软件部分.jpg"></p> <p>本项目软件后续会不断完善,更新内容将发布于<a href="https://github.com/Mixiaoxiao/ESP32-HOMEKIT-GATEWAY" target="_blank">我的github/ESP32-HOMEKIT-GATEWAY</a>。</p> <h4>1. BLE传感器与无线按钮</h4> <ul> <li>基于安信可提供的<a href="https://github.com/Ai-Thinker-Open/Telink_825X_SDK" target="_blank">Telink_825X_SDK</a> 进行开发</li> <li>开源代码见附件TLSR825X_BLE_SENSOR_CODE.zip</li> <li>BLE传感器与无线按钮的固件分别为附件TLSR825X_BLE_SENSOR_LC6_20210917.bin和TLSR825X_BLE_BUTTON_LC6_20210917.bin</li> </ul> <h4>2. HomeKit网关</h4> <ul> <li>基于乐鑫<a href="https://github.com/espressif/esp-idf" target="_blank">ESP-IDF</a>进行开发</li> <li>HomeKit实现基于部分修改的乐鑫<a href="https://github.com/espressif/esp-homekit-sdk" target="_blank">esp-homekit-sdk</a>进行开发</li> <li>自发现符合数据协议的BLE节点并桥接至HomeKit</li> <li>具备体系化的桥接多数量、多类型BLE节点的能力,数据协议灵活易扩展</li> <li>所有逻辑均由ESP32芯片本身实现,无需外部服务器,无需外部网络</li> <li>BLE节点历史数据由ESP32存储在其Flash中,10分钟一个数据点,最大保存30天</li> <li>固件见附件ESP32_HOMEKIT_GATEWAY_ALPHA1_FULL_20210919.bin,适用于ESP32各类开发板,烧录于地址0x00,AP模式配网后,在家庭APP中添加配件,配对码为<code>111-11-111</code></li> <li>浏览器访问ESP32的IP地址即可进入网关后台页面</li> </ul> <h4>3. 数据协议</h4> <ul> <li>使用BLE Beacon进行数据传输</li> <li>由厂商编号+私有标记、特有UUID共同确定本项目数据类型归属</li> <li>自定义数据部分由内部设备类型确定数据的解析格式,具有良好的扩展性</li> </ul> <p>多合一传感器与双键无线按钮的具体数据协议如下:</p> <p><img src="//image.lceda.cn/pullimage/bPkW4UcnfVwNpYb3iZd00wnz0RmUI5zOXFadppbu.jpeg" alt="LC6-数据协议v4.jpg"></p> <h3>六、低功耗</h3> <h4>1. BLE低功耗</h4> <ul> <li>采用变周期Beacon广播,包括“心跳模式”、“可连模式”、“极速模式”,平衡功耗、数据上报与快速响应,兼顾设备在线状态判断</li> <li>功耗较高的可连模式,需由用户手动触发,持续30s无设备请求连接则主动退出该模式,避免浪费电量</li> <li>连接状态时,已被其他设备连接后空闲一定时间(一定时间内无数据交互)后主动断开连接,避免浪费电量</li> </ul> <table> <tr> <th>模式</th> <th>广播周期</th> <th>可连接性</th> <th>适用场景</th> </tr> <tr> <td>心跳模式</td> <td>5s</td> <td>不可连接</td> <td>温湿度、光照等非事件型数据上报,同时用于设备在线状态判断</td> </tr> <tr> <td>可连模式</td> <td>1s</td> <td>可连接</td> <td>该模式下可被其他设备连接,目前连接后支持Tlink OTA</td> </tr> <tr> <td>极速模式</td> <td>20ms</td> <td>不可连接</td> <td>上报即时事件(门磁,按键),持续500ms,保证网关即时接收</td> </tr> </table> <h4>2. 传感器低功耗</h4> <ul> <li>传感器选型:选取静态电流较低的传感器型号,SHTC3 0.3uA,BH1750 0.01uA,MT6131AT 1.0uA(优于 CC6207/CC62021 5uA)</li> <li>测量期间主控休眠:向SHTC3与BH1750发出测量请求后,二者分别需要10.8ms、120ms完成测量,在此期间主控进入休眠状态以降低功耗</li> </ul> <h4>3. 按键扫描低功耗</h4> <ul> <li>按键与霍尔元件由IO变化唤醒主控处理事件,其他情况下主控可休眠</li> <li>仅在按键的双击与长按延时判定过程中由20ms的周期性睡眠/唤醒按键扫描</li> <li>BH1750测量需要120ms,在此期间穿插20ms的周期性睡眠/唤醒按键扫描</li> </ul> <h4>4. 功耗实测数据</h4> <p>使用万用表uA档进行测试,电流数据为每秒内的平均值。</p> <p>记录BLE节点每种工作状态下(休眠、广播、读取传感器等)的电流数据,根据每种工作状态持续时长计算平均电流。</p> <p>设置BLE发射功率为3.01dBm,高于Beacon设备普遍使用的0dBm,实测家庭环境下,BLE数据可穿透一堵实墙被网关接收。</p> <p>CR2032电池容量典型值210mAh,以下按85%实际可用容量进行计算。</p> <h5><strong>4.1 多合一传感器</strong></h5> <p>休眠3.8uA,广播23uA持续1秒,5秒广播一次,读取传感器+广播共 70uA持续1秒,15秒读取传感器一次。</p> <p>总平均电流(共15s一个循环) (70+23*2+3.8*12)/15=10.77uA</p> <p>若20秒读取传感器一次,总平均电流(共20s一个循环)(70+23*3+3.8*16)/20=9.99uA</p> <ul> <li><strong>(1) 15s读取一次传感器(固件默认),可用690.58天,合1.89年。</strong></li> <li><strong>(2) 20s读取一次传感器,可用744.49天,合 2.04年。</strong></li> </ul> <h5><strong>4.2 双键无线按钮</strong></h5> <p>休眠2.8uA,广播20.0uA持续1秒,5秒广播一次。</p> <p>总平均电流(20+2.8*4)/5=6.16uA</p> <p>单击400uA持续1s,双击500uA持续1s,长按550uA持续1s,这里统一取550uA持续1s。</p> <ul> <li><strong>(1) 纯待机,可用1191.91天,合3.27年</strong></li> <li><strong>(2) 每小时按1次(一天24次按钮事件),可用1163.74天,合 3.19年。</strong></li> <li><strong>(3) 每小时按2次(一天48次按钮事件),可用1136.87天,合 3.11年。</strong></li> </ul> <h3>七、BOM清单</h3> <p><strong>多合一传感器</strong></p> <table> <tr> <th>名称</th> <th>型号</th> <th>数量</th> </tr> <tr> <td>TLSR8250</td> <td>安信可TB-04</td> <td>1</td> </tr> <tr> <td>温湿度传感器</td> <td>SHTC3</td> <td>1</td> </tr> <tr> <td>光照传感器</td> <td>BH1750FVI</td> <td>1</td> </tr> <tr> <td>霍尔传感器</td> <td>MT6131AT</td> <td>1</td> </tr> <tr> <td>陶瓷天线</td> <td>AN9520-245 2.4G天线</td> <td>1</td> </tr> <tr> <td>轻触按键</td> <td>侧贴2x4x3.5mm</td> <td>1</td> </tr> <tr> <td>LED指示灯</td> <td>0603贴片蓝色</td> <td>1</td> </tr> <tr> <td>1206贴片电容</td> <td>100U</td> <td>1</td> </tr> <tr> <td>0603贴片电阻</td> <td>2K</td> <td>1</td> </tr> <tr> <td>0603贴片电容</td> <td>0.1U</td> <td>1</td> </tr> <tr> <td>CR2032电池座</td> <td>立创商城MY-2032-11</td> <td>1</td> </tr> </table> <p><strong>双键无线按钮</strong></p> <table> <tr> <th>名称</th> <th>型号</th> <th>数量</th> </tr> <tr> <td>TLSR8250</td> <td>安信可TB-03F</td> <td>1</td> </tr> <tr> <td>轻触按键</td> <td>4x4x1.5 防水铜头</td> <td>3</td> </tr> <tr> <td>LED指示灯</td> <td>0603贴片蓝色</td> <td>2</td> </tr> <tr> <td>1206贴片电容</td> <td>100U</td> <td>1</td> </tr> <tr> <td>0603贴片电阻</td> <td>2K</td> <td>2</td> </tr> <tr> <td>0603贴片电容</td> <td>0.1U</td> <td>1</td> </tr> <tr> <td>CR2032电池座</td> <td>立创商城MY-2032-11</td> <td>1</td> </tr> </table> <p><strong>TLSR825X烧录器</strong></p> <table> <tr> <th>名称</th> <th>型号</th> <th>数量</th> </tr> <tr> <td>HK7530</td> <td>航顺HK7530,立创商城</td> <td>1</td> </tr> <tr> <td>CH340C</td> <td>CH340C</td> <td>1</td> </tr> <tr> <td>USB公</td> <td>--</td> <td>1</td> </tr> <tr> <td>MicroUSB</td> <td>--</td> <td>1</td> </tr> <tr> <td>开关</td> <td>MSK12C02</td> <td>1</td> </tr> <tr> <td>轻触按键</td> <td>侧贴2x4x3.5mm</td> <td>1</td> </tr> <tr> <td>1206贴片电容</td> <td>100U</td> <td>1</td> </tr> <tr> <td>0603贴片电阻</td> <td>470R</td> <td>2</td> </tr> </table> <h3>八、大赛LOGO验证</h3> <p><img src="//image.lceda.cn/pullimage/4EXNbqHSUBpUc9OIL65N2MSlJsigw9sAQRAWKzwy.jpeg" alt="LC6_logo验证v2_small.jpg"></p> <p>立创大赛logo以丝印形式印刷在PCB上面。</p> <h3>九、演示您的项目并录制成视频上传</h3> <p>已上传项目视频,视频内容包括项目概述、硬件介绍、功能演示、功耗测试、大赛LOGO验证。</p> <p>更多详情:<a href="https://diy.szlcsc.com/posts/06c94d90c2c447dfbd9ed7339ff4a5b1" target="_blank">https://diy.szlcsc.com/posts/06c94d90c2c447dfbd9ed7339ff4a5b1</a></p>

文档

Sheet_BLE_SENSOR

Sheet_BLE_BUTTON

Sheet_TLSR825X_FLASHER

PCB_BLE_SENSOR_2021-06-29_00-32-12

PCB_BLE_BUTTON_2021-09-07

PCB_TLSR825X_FLASHER_2021-09-13_21-43-58

BOM

ID Name Designator Footprint Quantity Manufacturer Part Manufacturer Supplier Supplier Part
1 RX H4 PIN-1P-2.54 1
2 RST H5 PIN-1P-2.54 1
3 TX H3 PIN-1P-2.54 1
4 GND H2 PIN-1P-2.54 1
5 3V H1 PIN-1P-2.54 1
6 SWS H6 PIN-1P-2.54 1
7 BH1750 U3 BH1750FVI 1
8 CR2032 B1 CR2032-SMD 1
9 0.1U C2 CAP-0603 1
10 100U C1 CAP-1206 1
11 LED LED1 LED0603-FD 1
12 SHTC3 U4 SHTC3-SMD-NO_EP-WXC 1
13 HALL U1 SOT-23-3_L2.9-W1.3-P1.90-LS2.4-BR-WXC 1
14 TB-04 U2 TB-04 1
15 KEY SW1 BUTTON_2X4 1
16 AN9520-245 L1 ANT-SMD_L9.5-W2.1 1
17 2K R1 RES-0603 1
18 3V H1 PIN-1P-2.54 1
19 TX H3 PIN-1P-2.54 1
20 RX H4 PIN-1P-2.54 1
21 SWS H6 PIN-1P-2.54 1
22 RST H5 PIN-1P-2.54 1
23 GND H2 PIN-1P-2.54 1
24 CR2032 B1 CR2032-SMD 1
25 0.1U C2 CAP-0603 1
26 SWITCH-4X4X1.5_SMD (WXC) CTRL,SW1,SW2 SWITCH-4X4X1.5_SMD (CENTER) 3
27 100U C1 CAP-1206 1
28 LED LED1,LED2 LED0603-FD 2
29 TB-03F-WXC U3 TB-03F-WXC 1
30 3M R4,R3 RES-0603 2
31 2K R2,R1 RES-0603 2

附件

附件名 下载
多合一传感器外壳(pcb1.0mm)_base_v6_9.4.stl
多合一传感器外壳(pcb1.0mm)_cover_pcb1.0_v6_9.4.stl
多合一传感器外壳(磁铁15x5x3)_magnet_base_v6.stl
多合一传感器外壳(磁铁15x5x3)_magnet_cover_v6.stl
双键无线按钮外壳(pcb1.6mm)_base.stl
双键无线按钮外壳(pcb1.6mm)_button_x2.stl
双键无线按钮外壳(pcb1.6mm)_cover.stl
TLSR825X_BLE_SENSOR_LC6_20210917.bin
TLSR825X_BLE_BUTTON_LC6_20210917.bin
TLSR825X_BLE_SENSOR_CODE.zip
ESP32_HOMEKIT_GATEWAY_ALPHA1_FULL_20210919.bin

评论(5)

  • 表情
    emoji
    小嘉工作篇
    小嘉日常篇
  • 图片
成功
工程所有者当前已关闭评论
立创电赛 回复
<p> 记得在logo验证处,上传实物图哟~</p>
finger 回复
<p>BLE传感器的代码是不是不全。。好像只是shtc3和bh1750的驱动</p>
SteveChen 回复
<p>大佬可以提供无线按钮的源码参考下吗?谢谢!</p>
画板当吃生菜 回复
<p>还真有能人只用航顺LDO</p>
xxxggboy 回复
<p>看着挺牛的 竟然没啥人</p>
goToTop
svg-battery svg-battery-wifi svg-books svg-more svg-paste svg-pencil svg-plant svg-ruler svg-share svg-user svg-logo-cn svg-double-arrow