氦氪HEKR新手指南
v1.0.2 by fwj@hekr.me 11/14/2015 12:44:09 PM
Hangzhou District Nine Technology Co., Ltd. © 2015. All Rights Reserved.
文档简介
本文档以开发一个完整的DEMO(无极调光灯)为例,让开发者对氦氪HEKR能提供的功能有一个全面的了解,其中包括硬件模块、云端服务、APP程序等。同时我们将开放DEMO的源代码下载,让开发者在了解整个流程后根据自身需求进行扩展开发,为硬件注入智慧。
无极调光灯DEMO以透传模式开发。
1.整体框架
框架说明
用户使用APP通过云端与Wi-Fi模块进行通信(U-C-D链路),模块与单片机(MCU)采用串口通信。
2.模块硬件连接
MCU与Wi-Fi模块的串口默认参数为:9600-8-N-1
模块硬件相关参数以及封装参考氦氪HEKR模块硬件说明文档。
3.MCU程序开发
串口通信协议参考透传协议文档,基本格式主要包含帧头、帧长、帧类型、帧序号、有效数据以及校验码。
Wi-Fi模块发送的控制内容格式参考设备相关协议部分,例如打开灯具为
字节序号:#1 #2 #3 #4 #5 #6 #7 #8 #9#10#11#12#13 #14
模块发送:48 0E 02 01 02 01 00 00 00 00 00 00 00 5C
成功应答:48 0E 02 01 02 01 00 00 00 00 00 00 00 5C
MCU对Wi-Fi模块的操作主要包括Wi-Fi模块状态查询,以及在设备首次使用时发送指令使Wi-Fi模块进入配置模式,具体指令格式参照模块相关协议
MCU参考源代码下载(https://github.com/HEKR-Cloud/HEKR-MCU-SDK.git)
4.Wi-Fi模块使用
建议采用氦氪提供的HEKR模块V1.1。若使用其他厂家提供的ESP8266芯片模块(Flash至少2M),可以到Github下载透传固件并根据烧录说明自行烧录测试。
5.APP程序开发
样例APP请到各大应用市场搜索“HEKR”下载或扫描公司主页下方二维码下载测试。Github上有相应APP源码提供,也可自行修改编译测试。
5.1设备控制
- 调用
C1-1 用户登录认证
或C1-14 匿名账户
获得云端授权; - 调用
C1-2 生成ACCESSKEY
生成User_token; - 调用
C1-3 列举设备
获取所属设备列表,新账户为空数组([]
); - 调用
J1-1 用户登录认证
登录ws服务器; - 调用
J1-2 websocket往云端发送数据
发送控制指令并使用J1-3 websocket云端返回数据
接收控制应答;
5.2设备添加
- 调用
M1-1 HekrConfig
添加设备,调用示例代码如下
登录后获取设备的accesskey
HekrConfig hc = new HekrConfig( device_accesskey );
hc.config(ssid,password); //一键配置,代码会阻塞
hc.stop();//停止发送配置
Demo code
-
Android
new Thread(){ public void run(){ hc = new HekrConfig(Global.ACCESSKEY); Object ret= hc.config( ssidText.getText() + "", passwordText.getText() + ""); if(ret!=null){ //成功 }else{ //失败提示用户可以进入软Ap模式 } } }.start();
-
iOS
[[HekrConfig sharedInstance] setDeviceToken:deviceToken]; [[HekrConfig sharedInstance] hekrConfig:ssid password:password callback:^(BOOL ret){ if (ret){ //成功 }else{ //失败提示用户可以进入软Ap模式 } }];
APP开发详细API参考氦氪Mobile API文档。
更新历史
v1.0.2
- 添加Wi-Fi模块使用说明
v1.0.1
- 添加APP示例代码
v1.0.0
- 初始化版本。
最新版文档请访问 在线文档 http://docs.hekr.me