# How to use iot-sdk
## 1. 简介
本 sdk 提供一个基于 Linux和STM32F411RE,通过与 Wi-Fi 模块进行 AT 指令串口通信,实现与阿里云 ILOP 和 sds 以及中国移动杭研平台 直连的 IoT 物联网典型开发应用示例源代码,master分支是基于linux平台,NUCLEOF411RE分支是基于IAR和GCC平台。
## 2. 目录结构
```c
|---example
| |---ilopicaapp /*ilop平台 ica标准数据格式的demo*/
| |---iloprawapp /*ilop平台 自定义数据格式的demo*/
| |---sdsapp /*sds平台的demo*/
| |---qlinkapp /*杭研平台的demo*/
| |---test /*测试demo*/
|
|---platform
| |---linux /*linux平台相关的接口实现*/
| |---mx_hal.h
|
|---src
|---alicloud_ilop /*ilop平台的实现*/
|---alicloud_sds /*sds平台的实现*/
|---helper /*at指令解析内核*/
```
## 3. Linux 平台开发
### 3.1 准备
- 串口接入PC,并查询设备,命令:`ls -l /dev/ttyUSB*`
```
parallels@parallels-vm:~/iot-sdk$ ls -l /dev/ttyUSB*
crw-rw---- 1 root dialout 188, 0 Sep 3 16:15 /dev/ttyUSB0
```
### 3.2 编译
iot-sdk 提供四个demo,编译demo的命令格式 `make <demo>`
- 清除上次的make命令所产生的build文件,命令:`make clean`
```
parallels@parallels-vm:~/iot-sdk$ make clean
cleaning...
done
```
- 编译测试demo,命令:`make test`
```
parallels@parallels-vm:~/iot-sdk$ make test
mkdir build
compiling platform/linux/mx_serial.c
compiling platform/linux/mx_stdio.c
compiling platform/linux/mx_tick.c
compiling platform/linux/mx_uart.c
compiling src/helper/cli/mx_cli.c
compiling src/helper/emhost/ATCmdParser/ATCmdParser.c
compiling src/helper/emhost/emh_alisds.c
compiling src/helper/emhost/emh_arg.c
compiling src/helper/emhost/emh_ilop.c
compiling src/helper/emhost/emh_module.c
compiling src/helper/emhost/emh_wlan.c
compiling src/helper/mx_utils/mx_ringbuffer.c
compiling examples/test/test.c
generating build/iot-test.elf
text data bss dec hex filename
16294 928 3680 20902 51a6 build/iot-test.elf
```
- 编译完成后,在build目录下生成 `iot-test.elf` 文件
### 3.3 运行
- 运行build目录下的elf文件,命令:`./build/iot-test.elf <dev>`
```
parallels@parallels-vm:~/iot-sdk$ sudo ./build/iot-test.elf /dev/ttyUSB0
[sudo] password for parallels:
dev[/dev/ttyUSB0]
open at uart succeed
[APP: test.c: 19] FW version: ilop_AT_v2.1.4
[APP: test.c: 20] System tick: 757
```
## 4. IoT示例
### 4.1 阿里 ilop 平台的标准数据格式demo
### 4.2 阿里 ilop 平台的透传demo
### 4.3 杭研 qlink 平台的demo
#### 4.3.1 使用流程
(1) 获取客户在杭研申请账号密码
(2) 商务洽谈后,提交资料,完成后台产品创建,后台地址:[https://open.home.komect.com/partner/](https://open.home.komect.com/partner/)
(3) 搭建虚拟网关开发环境(详见examples/qlink中materials文件夹)
(4) 进行本地能网关环境下验证(使用虚拟网关开发调试)
(5) 杭研现场验收
(6) 项目入库
(7) 厂家提交配网相关资料,杭研配置成XML文件集成到H5开发的和家亲APP(此步奏或许可以提前,需要厂商和杭研沟通)
(8) 使用materials/下的和家亲APP测试(开发环境获取到的mqtt服务器地址以.199结尾,测试环境以.207结尾,生产环境以205结尾)
(9) 杭研云网关验证
#### 4.3.2 使用方法
(1) 庆科wifi模块烧录杭研qlink最新[AT固件](http://developer.mxchip.com/downloads/22/)
固件烧录具体方法可以参考resource/common/烧录路径下相关文档。
(2) 修改产品信息
新建产品后,可以获得product_token,andlink_token,product_id,豪恩报警盒子产品信息如下:
>>>>![30531](./resource/qlink/image/产品资料.png)
```
初始化产品参数
const emh_qlink_config_t config = {
.product_info = {
.product_id = "30531",
.product_token = "PXmsE6kQmxEgc0e3",
.andlink_token = "ZxMo0zJvvZMWP3Az",
.format = EMH_ARG_QLINK_FORMAT_JSON,
},
.version_info = {
.firmware_version = "1.4.3",
.software_version = "1.0.1",
}
};
```
(3) 编译运行demo
* make clean
```
wumingju@ubuntu:/mnt/hgfs/Work/project/AT_demo/at_host_qlink$ make clean
cleaning...
done
```
* make qlinkapp
```
mkdir build
compiling platform/linux/mx_serial.c
compiling platform/linux/mx_stdio.c
compiling platform/linux/mx_tick.c
compiling platform/linux/mx_uart.c
compiling src/helper/cli/mx_cli.c
compiling src/helper/emhost/ATCmdParser/ATCmdParser.c
compiling src/helper/emhost/emh_alisds.c
compiling src/helper/emhost/emh_arg.c
compiling src/helper/emhost/emh_ilop.c
compiling src/helper/emhost/emh_qlink.c
generating build/iot-qlinkapp.elf
text data bss dec hex filename
22826 1168 3696 27690 6c2a build/iot-qlinkapp.elf
```
* 运行 sudo ./build/iot-qlinkapp.elf
```
dev[/dev/ttyUSB0]
[APP: main.c: 150] open cli function
open at uart succeed
[QLINK: cloud_qlink.c: 119] FW version: basic_AT_v2.1.2
[APP: main.c: 30] WiFi config in AP mode......
[APP: main.c: 30] WiFi config in AP mode......
[APP: main.c: 34] Wi-Fi connected
[APP: main.c: 42] Cloud connected
```
(4) 基于虚拟网关使用说明
* 按照4.3.1使用流程中说明搭建好本地虚拟网关开发环境
* 测试本地环境是否OK
如果本地环境OK,点击配网andlinkdemo1.0.apk 开始连接按钮,会有如下页面:
<img src="./resource/qlink/image/环境OK.png" width="500" hegiht="313" align=center />
* 配网操作
通过cli串口发送 raw start命令 或者 按键触发调用qlink_raw_start()接口使设备进入本地网关一键配网模式,
同时手机APP点击开始连接按钮,绑定成功后APP提示添加成功,后台虚拟网关下面会显示出设备,如下:
>>>>![bind_ok](./resource/qlink/image/bind_ok.png)
* 数据下发
通过后台获取所有字段,操作如下所示:
>>>>![request_all_data](./resource/qlink/image/request_all_data.png)
通过后台获取部分字段,操作如下所示:
>>>>![request_some_data](./resource/qlink/image/request_some_data.png)
通过后台下发命令,操作如下所示:
>>>>![control_data](./resource/qlink/image/control_data.png)
设备收到云端获取字段指令后,需要调用mx_status emh_qlink_send_json_to_cloud( char *type, uint8_t *data, uint32_t len ) 函数将数据发送到云端
* 数据上传
mx_status qlink_send_data(char *type, uint8_t *data, uint32_t len),通过此函数 即可完成发送数据的功能
```
type: 为发送数据的类型,注意主动上报和响应要选择不同类型
设备主动上报: type = Inform
人为触发的数据上报: type = ParamChange
云端请求上报: type = Data
文件操作: type = File
data:上传具体内容
```
也可通过cli串口输入send type <data> 发送数据
(5) 基于云网关使用说明
* 提交XML配网资料
完成本地网关验证后,可以提交配网引导界面相关资料,杭研配置XML到手机APP,之后方可进行云网关验证操作,
提交配网资料可以提交本地网关+云网关方式资料或者仅通过云网关配网资料,建议提供只用云网关配网资料,
如此一来,上线验证只需要验证云网关部分即可,减少验证流程,提高上线时间
* 配网操作
通过cli串口发送 user start命令 或者 按键触发调用qlink_user_start()接口使设备进入云网关用户配网模式,
同时手机APP(resource/qlink/2.云网关/app路径)进入添加设备页面,扫描到如下页面,说明设备进�
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
本 sdk 提供一个基于 Linux和STM32F411RE,通过与 Wi-Fi 模块进行 AT 指令串口通信,实现与阿里云 ILOP 和 sds 以及中国移动杭研平台 直连的 IoT 物联网典型开发应用示例源代码,master分支是基于linux平台,NUCLEOF411RE分支是基于IAR和GCC平台。 Linux 平台开发 3.1 准备 串口接入PC,并查询设备,命令:ls -l /dev/ttyUSB* parallels@parallels-vm:~/iot-sdk$ ls -l /dev/ttyUSB* crw-rw---- 1 root dialout 188, 0 Sep 3 16:15 /dev/ttyUSB0 3.2 编译 iot-sdk 提供四个demo,编译demo的命令格式 make <demo> 清除上次的make命令所产生的build文件,命令:make clean parallels@parallels-vm:~/iot-sdk$ make clean cleaning... done 编译测试demo,命令:make test parallel
资源推荐
资源详情
资源评论
收起资源包目录
基于 Linux和STM32F411RE通过与WiFi模块进行AT指令串口通信,实现与阿里云&sds 直连的IoT联网开发应用 (123个子文件)
cmcc.apk 68.71MB
app-cmccUniversalApp-release-3.5.0.1809051454.apk 67.47MB
andlinkdemo1.0.apk 1.45MB
horn@mx1290@moc.all.bin 1.03MB
raw_protocol.c 17KB
alicloud_sds.c 16KB
json_wrappers.c 13KB
mx_cli.c 13KB
ATCmdParser.c 11KB
alicloud_ilop.c 11KB
ilopmain.c 10KB
emh_ilop.c 8KB
json_generator.c 8KB
cloud_qlink.c 7KB
jsmn.c 7KB
emh_alisds.c 7KB
emh_qlink.c 7KB
emh_arg.c 6KB
mx_uart.c 6KB
ica_protocol.c 6KB
main.c 5KB
mx_serial.c 4KB
app_prop.c 4KB
emh_module.c 4KB
app_prop_wifi.c 4KB
mx_stdio.c 4KB
app_prop_light.c 3KB
json_escape_str.c 3KB
json_utils.c 2KB
ilopmain.c 2KB
emh_wlan.c 2KB
sdsapp.c 2KB
mx_tick.c 2KB
mx_ringbuffer.c 2KB
app_event.c 2KB
app_event.c 2KB
main.c 1KB
test.c 817B
app_service.c 503B
app_service.c 454B
ATCmdParserTest.c 437B
main.c 317B
mpate.dll 2.2MB
mpimg.dll 62KB
中国移动And-link协议规范(设备本地网关管理分册)v3.1.docx 555KB
中国移动And-link协议规范(设备云网关管理分册)v2.0.docx 175KB
虚拟开发环境使用说明书.docx 145KB
火狐coap工具OTA说明.docx 99KB
固件烧录注意事项.docx 10KB
~$开发环境使用说明书.docx 162B
Firefox Setup 50.1.0.exe 44.66MB
AndlinkDiagnotorIL_64_20180620.exe 29.19MB
andlink2.10-05.29-64bit.exe 9.17MB
MXCHIP_MP_TOOLS.exe 80KB
MXCHIP_IMG_TOOL_RESET.exe 36KB
.gitignore 9B
mx_debug.h 29KB
mx_common.h 29KB
json_parser.h 24KB
emh_api.h 15KB
json_generator.h 12KB
mx_toolchain.h 11KB
alicloud_ilop.h 8KB
alicloud_sds.h 7KB
mx_hal.h 7KB
emh_arg.h 7KB
raw_protocol.h 6KB
cloud_qlink.h 6KB
ATCmdParser.h 5KB
mx_opt.h 4KB
mx_ringbuffer.h 3KB
mx_cli.h 3KB
jsmn.h 2KB
main.h 2KB
ica_protocol.h 2KB
main.h 791B
user_qlink_include.h 666B
json_escape_str.h 543B
json_utils.h 112B
杭研-ios-app.jpg 68KB
th.jpg 31KB
WiFiParameterSync.json 407B
settings.json 167B
ssid.json 59B
Version.json 20B
SyncCode.json 17B
IfEncrypt.json 14B
internetModelGWInfo.json 0B
andlink.lck 16B
.lck 0B
LICENSE 10KB
MXCHIP_MP_TOOLS.lnk 2KB
log.log 1.09MB
andlinkPlugins.log 87KB
andlink.log 4KB
error.log 627B
Makefile 6KB
README.md 9KB
sdsapp.mk 238B
Andlink模拟网关使用说明v2.2.pdf 1.11MB
共 123 条
- 1
- 2
资源评论
荒野大飞
- 粉丝: 1w+
- 资源: 2662
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 深海采矿车路径规划MATLAB仿真源代码全套技术资料.zip
- Python基础学习第一天(思维导图)
- (176602634)粒子群算法(PSO)优化双向长短期记忆神经网络的数据回归预测,PSO-BiLSTM回归预测,多输入单输出模型 评价指标包括:
- 华强北商城二手手机-JAVA-基于springBoot华强北商城二手手机管理系统(毕业论文)
- 水中物体检测1-YOLO(v5至v9)、COCO、CreateML、Darknet、Paligemma数据集合集.rar
- 夕阳红公寓管理-JAVA-基于springBoot夕阳红公寓管理系统的设计与实现(毕业论文)
- (178784654)java基于ssm(spring+springmvc+mybatis)框架的图书借阅管理系统
- 新冠病毒密接者跟踪-JAVA-基于springBoot新冠病毒密接者跟踪系统(毕业论文)
- (179744002)2防御性驾驶安全常识.mp4.zip
- 办公室行政事务-JAVA-基于springBoot的高校办公室行政事务管理系统设计与实现(毕业论文+开题)
- IMG_1343.PNG
- 15 unit 11.mp3
- 保险合同-JAVA-基于Spring Boot的可盈保险合同管理系统的设计与实现(毕业论文+任务书)
- 智慧图书管理-JAVA-基于springBoot智慧图书管理系统设计与实现(毕业论文)
- 水杯和笔检测16-YOLOv5数据集合集.rar
- ECharts散点图-各国人均寿命与GDP关系演变.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功