基于OpenHarmony L2设备 采用IoTDeviceSDKTiny对接华为云

举报
星辰27 发表于 2022/10/27 15:06:46 2022/10/27
8.3k+ 0 0
【摘要】 本文主要讲解如何基于L2设备对接华为云IoTDA,以DAYU200开发板,采用IoTDeviceSDKTiny对接华为云IoTDA,当然这里也可以采用其他OpenHarmony的富设备。

1 前期环境准备

(1)开发板相关:参考DAYU开发指导

(2)代码编译相关:OpenHarmony源码以及编译环境

2 下载SDK

下载附件中源代码后,将文件夹重命名为iot_device_sdk_tiny,将其拷贝到已经下载好的OpenHarmony 源码根目录的third_party文件夹下,我这里使用的OpenHarmony版本为3.1.1- release版本。

3 添加子系统编译构建

在子系统配置文件subsystem_config.json中新建子系统。其位于OpenHarmony源码根目录的build文件夹下,添加如下构建脚本

"iot_device_sdk_tiny": {

    "path": "third_party/iot_device_sdk_tiny",

    "name": "iot_device_sdk_tiny"

  }

具体如图1所示

5.png

图1

在产品配置文件中添加编译上述子系统,具体命令如图2所示,可见其子系统名称与上述文件一一对应。其为OpenHarmony源码目录下的productdefine/common/products/rk3568.json文件。

6.png

图2

4 验证添加子系统

我们可以通过修改iot_device_sdk_tiny中demos编译文件选项进行配置具体如下图,将demo赋值为hello_world,编译hello_world_demo,看最终是否打印hello world。

7.png

图3

采用如下命令进行编译

./build.sh --product-name rk3568 --build-target iot_device_sdk_tiny

编译成功具体如图4所示

8.png

图4

编译生成文件位于//out/rk3568/iot_device_sdk_tiny/iot_device_sdk_tiny/文件下的hello_world_demo。

生成了hello_world_demo,我们采用hdc_std工具将该文件发送到开发板的data文件夹下,具体如下命令

hdc_std file send D:\DAYU200_images\hello_world_demo ./data

发送成功后进入shell,进入data文件夹下,执行hello_world_demo。

cd data

./hello_world_demo

如果显示权限问题,请通过如下命令添加权限

chmod 777 hello_world_demo

之后再次执行发现打印如下字幕,与代码中hello_world_demo_.c中一致。

9.png

图5

5 验证对接华为云

之后将图3中demo赋值为mqtt_tiny_v5_agriculture,之后重复上述过程编译,运行。

10.png

图6

如果想使用MQTTS对接华为云,那么可以将iot_config.h文件中的最下面的宏CONFIG_MQTTS打开即可。如图7所示。11.png

图7

运行结果如下所示即为对接华为云成功,当然也可以通过华为云IoTDA consle界面查看到设备在线,且在上报数据。

12.png

图8

13.png

图9

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。