蓝牙连接开发指南
更新时间:2019-08-22 11:46:56
概述
对于蓝牙设备,阿里巴巴物联网平台提供了一套完整的解决方案:蓝牙设备接入框架。
蓝牙设备接入框架工作流程如下所示:
上图中的SDK API 可以参见 : iOS蓝牙SDK开发文档,Android蓝牙SDK开发文档
蓝牙设备接入框架支撑两种形式的蓝牙接入:
- 阿里云IoT定义一套蓝牙通用规范(Breeze),简化了厂商进行复杂蓝牙设备的开发(如:智能手表,蓝牙门锁等)
此接入方案需要按 蓝牙设备开发指南 开发您的设备端。
- 开发者也可以不采用阿里云IoT蓝牙通用规范,而使用自己的私有蓝牙协议通信
如下图所示:开发者可以开发三方蓝牙通信插件来跟第三方的蓝牙设备进行通信,而无需要在蓝牙设备里集成阿里云IoT提供的设备端 Breeze SDK。
第三方蓝牙通信插件:可参考 第三方蓝牙通信插件如何开发
框架系统模块图如下所示:
框架中主要模块介绍
设备面板:即设备控制的相关UI
插件抽象接口:约定了开发者在移动端开发三方蓝牙通信插件时必须实现的API,请参见 第三方蓝牙通信插件如何开发 中的相关示例代码。
数据转换引擎:当设备端的产品功能定义没有按阿里云IoT建议的物模型进行设计时,开发者需要在飞燕控制台创建产品时上传数据格式转换脚本,APP端的数据格式转换引擎会在Runtime将脚本下载下来,在数据从手机APP将发往设备会做一次数据转换,转换成设备端能识别的格式,同理设备上报给APP的数据也会反向转换,转换成物模型定义的格式。物模型定义
PS:对于第三方蓝牙设备,其产品功能定义肯定未遵循阿里云IoT物模型规范,则这一步不能跳过。
设备格式转换脚本上传请在飞燕控制台操作:
蓝牙产品创建步骤
蓝牙产品在飞燕平台的创建流程如下:
填写产品信息之后,是否接入网关选择“是”
接入协议选择“BLE”
如果设备端的产品功能定义没有按阿里云IoT建议的物模型进行设计时,请将数据格式切成 ‘透传/自定义’格式。对于三方蓝牙设备,必须选‘透传/自定义’数据格式。
开发介绍
移动端
开发者在生活物联网平台中,可以通过两种方式实现蓝牙设备的移动端:
使用公版APP
开发自有品牌APP
1. 公版APP
首页右上角进入蓝牙配网:
2. 开发自有品牌APP
蓝牙SDK下载
勾选“蓝牙设备接入框架” 套餐项,平台会自动生成SDK套餐包,最后下载集成开发即可。如何勾选“蓝牙设备接入框架”,请参见:APP SDK 概述文档
移动端 SDK 介绍: iOS开发文档,Android开发文档
蓝牙OTA SDK下载:iOS开发文档,android开发文档
设备端
如果选择了阿里云IoT提供的Breeze蓝牙方案,蓝牙连接开发需要移动端 SDK 和设备端 SDK 配合使用。设备端开发需要根据蓝牙芯片选择不同的 SDK 使用。
- 设备端 Breeze SDK 介绍:详见文档。
OTA配置:
1.进入运营中心
- 在固件升级页面通过“新增固件” 添加一个OTA任务
- 验证固件,固件能过批量升级前必现先验证,在验证页面,可以选择待升级版本(必现由蓝牙设备通过手机上报上来),deviceName,验证完成后,即可进行常规批量OTA升级工作。