微信智能跑鞋技术解密

  微信硬件平台官方最近发布了一款接入微信的智能跑鞋,借力微信社交进行品牌营销。相比之前运动手环一般通过微信精简协议来接入微信运动,智能跑鞋是使用微信蓝牙airsync协议实现接入,其支持自定义应用协议,能够实现更加丰富的功能。前者在微信前端界面只是实现了单一的微信运动排行榜,而后者还可以通过定制商家的微信公众平台来实现步数累加、积分兑换、邀请好友竞技等等。后者利用微信好友社交有更好的体验。

  嵌入式企鹅圈半年前就已经研发并试产过面向儿童的智能防丢计步鞋,使用了DA14580+Lis3dh重力加速度传感器。现在低功耗蓝牙单芯片DA14580上集成微信airsync,并已经完成后端的研发接入。有兴趣邮件咨询yqwucheng@163.com.

       现将嵌入式企鹅圈的微信智能跑鞋方案的技术要点进行一一说明。

一、框架图

微信智能跑鞋技术解密

二、DA14580蓝牙应用开发

1. 计步算法

  一般都是基于某款加速度传感器或者陀螺仪进行算法研究实现。Lis3dh是意法半导体研发的6D传感器,在可穿戴设备中有较高的占比。

有关的Lis3dh的使用方法和计步原理请参考之前的博文。嵌入式企鹅圈的计步算法能达到98%的准确率。

2.    防丢应用

  防丢应用是面向儿童设定的,父母可以通过防丢来监控穿着智能鞋的子女的范围。其原理是蓝牙设备提供发射功率参数给APP/微信H5,H5也可以随时获得蓝牙设备的RSSI信号强度,这两个参数可以计算出手机和智能鞋的距离。当距离超过设定时,智能鞋和手机APP/H5都可以发出警告。

3.    跺脚检测

       为了安全,跑鞋的智能模块不应该给任意手机用户绑定。所以提供了跺脚检测算法,检测到跺脚才进入绑定状态。

4.    运动静止检测

  智能鞋在静止时应该进入深度睡眠状态以节省功耗

5.    运动参数存储

  使用外置flash存储。

6.    通信协议实现

  一般蓝牙设备需要主动更新参数给手机,如计步实时数据和历史数据,使用蓝牙的indicate characteristic;手机主动控制蓝牙设备,使用蓝牙的writecharacteristic;手机主动读取蓝牙设备信息,使用蓝牙的read characteristic。

 

三、DA14580微信接入

1. 微信蓝牙精简协议

  只是单纯地上报步数、距离和卡路里。

  后端通过“接入社交功能”消息结合来提供微信运动排行榜。

2.    微信蓝牙airsync协议

  Airsync协议分别实现indicatecharacteristic、indicate characteristic和read characteristic。用户可以在此基础上定制用户层应用协议。

 

三、微信前端

1. 微信硬件JSAPI使用

  硬件设备消息通过微信->微信公众平台->商家的后台进行处理,之后再通过微信公众平台->微信->设备,整个流程很长,实时体验不好。使用JSAPI在某些实时场景是必须的。前端可以通过AJAX技术跟后台直接交换,并可以调用JSAPI来直接跟蓝牙设备进行交互。

2.    微信应用消息接口

  如接入社交功能接口,微信硬件消息接口等等。

3.    智能鞋社交应用开发

  儿童监控、运动记录、鞋子定位等等。一般智能鞋还会利用地图和GPS进行定位。微信硬件发布的智能鞋还有邀请好友进行跑步竞技、排行榜、跟商家的营销结合进行步数积分兑换等等。

嵌入式企鹅圈之前在APP端实现儿童监控、运动记录等功能。微信前端应用可以进行定制实现。

 

四、后端开发

  实现微信接入和微信前端应用逻辑的支撑服务。

 

五、应用图示

微信智能跑鞋技术解密

      嵌入式企鹅圈原创团队由阿里、魅族、nvidia、龙芯、炬力、拓尔思等资深工程师组成。百分百原创,每周两篇,分享嵌入式、Linux、物联网、GPU、Android、自动驾驶等技术。欢迎扫码关注微信公众号:嵌入式企鹅圈,实时推送原创文章!

 

微信智能跑鞋技术解密

 

微信智能跑鞋技术解密

上一篇:微信公众号开发教程[003]-消息管理-接收消息


下一篇:腾讯微信技术总监周颢:一亿用户增长背后的架构秘密