门锁功能实现

更新时间:2022-03-02 02:05:49下载pdf

本文介绍了蓝牙门锁的功能开发说明,包括配网、开门日志、告警设置、密码等功能。

配网

使用场景

初次配网或操作移除网络后的配网,模组自带功能,无 DP。

实现流程

正常完成配网后给模组上电上传数据,只需要给模组上电,等待模组返回已连接服务器的网络状态即可。

门锁功能实现

使用协议:

  • 0x01:获取 MCU 信息
  • 0x02:请求模组工作模式
  • 0x03:发送模组工作状态
  • 0x04:重置模组

电量显示功能

使用场景

显示设备当前电量情况。

涉及DP

  • DP 8 剩余电量

  • DP 9 电池电量状态

    注意:两个 DP 二选一即可,都选默认使用电量状态,根据设备实际情况选择上报的类型。

DP说明

  • 剩余电量:显示当前剩余电量百分比,取值范围 0~100
  • 电池电量状态:显示当前剩余电量挡位,分为高、中、低、电量耗尽四档
  • 上报逻辑,以下情况要求上报:
    1. 设备首次配网/重新配网需上报电量
    2. 设备重启(更换电池)
    3. 电量发生变化
    4. 定期上报,如10天更新上报一次

使用协议:0x07 实时状态上报

开门日志功能

使用场景

App上可查看门锁的历史开门记录。

涉及DP

  • DP 12 指纹解锁

  • DP 13 密码解锁

  • DP 14 动态密码解锁

  • DP 15卡片解锁

  • DP 16 钥匙解锁

  • DP 17 开关门事件

  • DP 18 门从内侧打开

  • DP 19 蓝牙解锁记录

  • DP 39 人脸解锁

  • DP 41 虹膜解锁

  • DP 42 掌纹解锁

  • DP 43 指静脉解锁

  • DP 55 临时密码解锁

    注意:需要联系项目经理开通权限,App才能显示记录数据,且无条数限制。

DP说明

  • 指纹解锁、密码解锁、卡片解锁、人脸解锁、虹膜解锁、掌纹解锁、指静脉解锁、蓝牙解锁记录:DP 值用于区分人员(取值范围0~999),上报时面板显示对应人员解锁信息。
  • 钥匙解锁、动态密码解锁、临时密码解锁:DP值无特殊含义(取值范围0~999),只为与上面的数据格式保持统一,上报时面板只显示解锁方式,不做人员区别。

实现流程

门锁被打开时,上报对应开门方式的 DP,如下表。开门日志显示的记录数据需要在没有网络的情况下,和实际发生的事件一致,因此推荐使用记录型状态上报。在断网时模组保存无法上报成功的数据,来当下次有数据上报的时候再重新上报,记录型数据携带时间为设备本地时间。

开门方式 上报 DP DP 值
指纹开门 指纹解锁 与实际对应
普通密码开门 密码解锁 与实际对应
动态密码开门 动态密码解锁 任意值均可
卡片开门 卡片解锁 与实际对应
钥匙开门 钥匙解锁 任意值均可
从门内侧开门 门从内侧打开 00/01
蓝牙开门 蓝牙解锁记录 与实际对应
人脸开门 人脸解锁 与实际对应
虹膜开门 虹膜解锁 与实际对应
掌纹开门 掌纹解锁 与实际对应
指静脉开门 指静脉解锁 与实际对应
临时密码开门 临时密码解锁 任意值均可

门锁功能实现

使用协议:0xE0 记录型状态上报

告警记录

使用场景

门锁告警被触发时,App上能及时提示告警,且能查看告警记录。

涉及DP

  • DP 21 门锁告警

  • DP 22 劫持告警

  • DP 24 门铃呼叫

    注意:需要联系涂鸦项目经理开通权限,App才能显示记录数据,且无条数限制。

DP说明

  • 门锁告警:告警支持的内容包括 指纹试错报警、密码试错报警、卡试错报警、人脸试错报警、假锁(锁舌卡住)、高温报警、超时未关门、电子锁舌未弹出、防撬报警、钥匙插入、低电报警、电量耗尽报警、震动报警。
  • 劫持告警:在App标记需要作为劫持报警触发的指纹编号,当用户使用该指纹进行解锁的时候,将触发报警。
  • 门铃呼叫:如果门锁硬件支持门铃功能,有人按门锁上的门铃后,App进行提醒,在告警-门铃消息中留下记录。

实现流程

  • 基本思路

    触发告警时,MCU上报对应告警DP值。

    注意:用记录型状态上报,要采用设备端时间,且要注意时间的准确性。若设备时间比实际时间滞后,上报时App报警图标无闪烁提醒,点击进去可以查看到该条报警记录;若以服务端时间为准,设备断网后重新联网,这时显示记录时间和实际发生的事件不符合。

  • 流程图

    门锁功能实现

使用协议:0xE0 记录型状态上报

临时密码

使用场景

用户在App上设置临时密码,有效时间内访客在门锁上输入对应的临时密码即可开门。该功能需要门锁本地有时钟芯片,且建议临时密码获取后保存在本地。

涉及DP

  • DP 51:添加临时密码
  • DP 52:删除临时密码
  • DP 53:修改临时密码
  • DP 55:临时密码解锁

DP说明

  • 添加临时密码:通过App创建密码,下发至门锁。
  • 删除临时密码:通过App删除密码,删除密码时,通过服务器分配的唯一的密码编号对应,删除的密码无法被恢复。
  • 修改临时密码:通过App修改密码,修改密码时,通过服务器分配的唯一的密码编号对应。

实现流程

门锁功能实现

动态密码

使用场景

用户在App上生成动态密码,有效时间内访客在门锁上输入对应的动态密码即可开门。

涉及DP

DP 14:动态密码解锁

实现流程

App上获取动态密码,设备端输入动态密码并上报,模组返回校验结果,设备根据回复结果控制门锁状态。动态密码离线可用,5分钟内有效,超时重新获取。

注意:App上获取动态密码,目前蓝牙门锁公版面板没有加入管理员密码的混算,但嵌入式和服务器上已支持。

门锁功能实现

使用协议:0xE6 获得一次性动态密码

短信通知

使用场景

  • 该功能与临时密码功能所对应,在需要临时密码的场景下,通过涂鸦App(或OEM的App)在创建临时密码的同时,可以给指定的手机号发送短信,短信内容中包含设备的名称,密码的内容,以及生效时间和失效时间。
  • 短信支持中国大陆地区,以及海外,在App创建临时密码的时候,可以选择国家/地区码。

涉及DP

DP 25:短信通知

DP说明

  • 该 DP 是非必选 DP,使用该功能需要付费。

  • 勾选该 DP 后,在增值服务 功能拓展服务 开通。

    门锁功能实现

    说明:纯App功能,无需协议。

开门方式管理

使用场景

通过 App 发起开门方式的增删改,门锁收到后进行本地的操作,并返回结果,和门锁家庭成员强关联。

涉及 DP

  • DP 1:添加开门方式
  • DP 2:删除开门方式
  • DP 3:修改开门方式
  • DP 4:冻结开门方式(弃用)
  • DP 5:解冻开门方式(弃用)
  • DP 35:同步成员开门方式(弃用)
  • DP 49:解冻用户
  • DP 50:冻结用户
  • DP 54:同步解锁方式

DP 说明

  • 添加开门方式、删除开门方式、修改开门方式:蓝牙近距离连接门锁后,App端进行卡、密码、指纹等的创建、删除和修改。
  • (已弃用)同步成员开门方式:同步某个成员的所有的开锁方式,使App 可以实时获取某个成员所拥有的所有开锁方式,以保持 App 端和设备端的一致性。
  • 冻结用户、解冻用户:通过App冻结、解冻用户,从而使用户所关联开门方式失效或生效。
  • 同步解锁方式:为了保持服务器和设备本地开锁方式的一致性,每次进入App硬件列表/在App硬件列表下拉刷新时都需要进行开锁方式的全量同步(手机和本地添加的所有开锁方式)。

实现流程

门锁功能实现

数据较复杂,具体请参考 蓝牙门锁DP参考

蓝牙解锁

使用场景

蓝牙连接时,通过手机App点击开门。

涉及DP

  • DP 6:蓝牙解锁
  • DP 7:蓝牙解锁反馈
  • DP 19:蓝牙解锁记录

实现流程

门锁功能实现

远程解锁

使用场景

蓝牙门锁通过网关连接时,通过手机App点击开门或智能音箱语音解锁。

涉及DP

  • DP 60:远程开锁配置
  • DP 61:远程解锁
  • DP 62:远程手机开锁
  • DP 63:远程语音开锁

实现流程

门锁功能实现

成员管理

使用场景

App各类成员管理权限

角色权限

角色 属于设备所在的当前家庭 有App账号 管理员管理、普通成员管理(增删改查) 门卡、密码、指纹管理 临时密码 动态密码、手机开门 时效 查看日志、设备状态
App管理员 永久
App家庭成员 可选默认开,可关闭 可选默认开,可关闭 永久 是,只可见自己账户开门记录
分享普通成员(由普通成员分享) 可选默认开,可关闭 可选默认开,可关闭 可选 是,只可见自己账户开门记录
普通成员 可选默认开,可关闭 可选默认开,可关闭 可选 是,只可见自己账户开门记录

补充说明

产测

  • 当需要整机产测时,使用协议 0x0E RF射频测试。

  • 测试工具:蓝牙信标(涂鸦提供),作用:发射名称为ty_mdev 的广播信号。

  • 测试步骤:首先将信标放在距离模组较近(0.5 米左右)的地方。然后通过串口发送该 rf 射频测试指令,模组会搜索蓝牙信标并返回信号强度值,一般信号强度大于 -70db 认为模组射频工作正常。

告警设置

需要App弹窗提醒部分信息,请参考 告警设置 在 IoT 平台设置。