3 Star 5 Fork 3

RT-Thread-Mirror / ucloud-iot-rtthread-package

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 7.39 KB
一键复制 编辑 原始数据 按行查看 历史
ethan.du 提交于 2020-04-07 18:34 . add package tools

UCloud IOT SDK for rt-thread Package

1 介绍

UCloud IOT SDK for rt-thread Package 是基于UCloud设备端C-SDK在RThread环境开发的软件包,用于连接uiot-core物联网平台

1.1 SDK架构图

1.2 目录结构

名称 说明
docs 说明文档
ports 移植文件目录
samples 示例文件目录
uiot UCloud设备端C-SDK
LICENSE 许可证文件
README.md 软件包使用说明
SConscript RT-Thread 默认的构建脚本

1.3 许可证

许可协议Apache 2.0。

1.4 依赖

Ota功能需要fal软件包 [ ] fal: Flash Abstraction Layer implement. Manage flash device and partition. ---> Tls功能需要mbedtls软件包 [ ] mbedtls: An portable and flexible SSL/TLS library ----

2 如何打开软件包

menuconfig配置

  • RT-Thread env开发工具中使用 menuconfig 软件包,配置产品及设备信息, 路径如下:
RT-Thread online packages  --->
    IoT - internet of things  --->
        IoT Cloud  --->
            [ ] ucloud_iot_sdk: Ucloud iot sdk for uiot-core platform.  --->
              --- ucloud_iot_sdk:  Ucloud iot sdk for uiot-core platform 
                Ucloud Device Config  --->                  
                [ ]   Enable Mqtt Link uiot-core Platform
                [ ]   Enable Http Link uiot-core Platform
                [ ]   Enable Ucloud Debug
                Version (latest)  --->	

3 软件包的使用

根据产品需求选择合适的应用示例修改新增业务逻辑,也可新增例程编写新的业务逻辑。

    --- ucloud_iot_sdk: Ucloud iot sdk for uiot-core platform.
          Ucloud Device Config  --->    
    [*]   Enable Mqtt Link uiot-core Platform
    [ ]     Enable Ucloud Mqtt Sample 
    [ ]     Enable Ucloud Mqtt Dynamic Auth Sample
    [*]   Enable Http Link uiot-core Platform
    [ ]     Enable Ucloud Http Publish Sample
    [ ]     Enable Ucloud Http Upload File Sample
    [*]   Enable Shadow      
    [ ]     Enable Ucloud Shadow Sample
    [*]   Enable Dev Model  
    [ ]     Enable Ucloud Dev Model Sample
    [*]   Enable Ota                                                                                                
    [ ]     Enable Ucloud Ota Sample  
    -*-   Enable Tls 
    [ ]   Enable Ucloud Debug
          Version (latest)  --->
  • 选项说明 Ucloud Device Config :填写当前设备认证要素,当认证模式为动态认证时,设备密钥可以不填写

Enable Mqtt Link uiot-core Platform:使能MQTT连接云平台功能。

Enable Ucloud Mqtt Sample:使能静态注册mqtt和注册成功后收发消息的案例

Enable Ucloud Mqtt Dynamic Auth Sample: 使能动态注册mqtt和注册成功后收发消息的案例

Enable Http Link uiot-core Platform:使能HTTP连接云平台功能,包括使用https上传消息和上传文件,只支持https,勾选会关联选中mbedTLS软件包。

Enable Ucloud Http Publish Sample:使能使用https向云平台上传消息的案例

Enable Ucloud Http Upload File Sample: 使能使用https向云平台上传一段buffer在云端保存成文件的案例

Enable Shadow:使能设备影子功能

Enable Ucloud Shadow Sample:使能设备影子的案例

Enable Dev Model:使能物模型功能

Enable Ucloud Dev Model Sample:使能物模型的案例

Enable Ota:使能远程升级版本的功能,若使能由于要使用flash的分区功能进行ota升级,会关联选中fal软件包。

Enable Ucloud Ota Sample:使能远程升级版本的案例

Enable TLS: 是否使能TLS,若使能,则会关联选中mbedTLS软件包。

Enable Ucloud Debug: 使能调试打印输出

Version (latest) --->:选择软件包的版本

  • 使用 pkgs --update 命令下载需要使用的软件包

2.2 编译及运行

  1. 使用命令 scons --target=xxx 输出对应的工程,编译

  2. 打开生成的工程,编译下载到设备中

2.3 运行demo程序

系统启动后,在 MSH 中使用命令执行,以mqtt_sample为例: 启动案例:mqtt_test_example start 终止案例:mqtt_test_example stop

执行输出: msh />mqtt_test_example start
establish tcp connection with server(host='mqtt-cn-sh2.iot.ucloud.cn', port=[1883])
msh />success to establish tcp, fd=4
Cloud Device Construct Successsubscribe success, packet-id=2
publish success, packet-id=3
Receive Message With topicName:/fahnimwwvph259ag/3um7h4fdiigf2yyh/upload/event, payload:{"test": "0"}
publish success, packet-id=4
Receive Message With topicName:/fahnimwwvph259ag/3um7h4fdiigf2yyh/upload/event, payload:{"test": "1"}
publish success, packet-id=5
Receive Message With topicName:/fahnimwwvph259ag/3um7h4fdiigf2yyh/upload/event, payload:{"test": "2"}
publish success, packet-id=6
Receive Message With topicName:/fahnimwwvph259ag/3um7h4fdiigf2yyh/upload/event, payload:{"test": "3"}
publish success, packet-id=7
Receive Message With topicName:/fahnimwwvph259ag/3um7h4fdiigf2yyh/upload/event, payload:{"test": "4"}
publish success, packet-id=8
Receive Message With topicName:/fahnimwwvph259ag/3um7h4fdiigf2yyh/upload/event, payload:{"test": "5"}
publish success, packet-id=9
Receive Message With topicName:/fahnimwwvph259ag/3um7h4fdiigf2yyh/upload/event, payload:{"test": "6"}
publish success, packet-id=10
Receive Message With topicName:/fahnimwwvph259ag/3um7h4fdiigf2yyh/upload/event, payload:{"test": "7"}
publish success, packet-id=11
Receive Message With topicName:/fahnimwwvph259ag/3um7h4fdiigf2yyh/upload/event, payload:{"test": "8"}
publish success, packet-id=12
Receive Message With topicName:/fahnimwwvph259ag/3um7h4fdiigf2yyh/upload/event, payload:{"test": "9"}

C
1
https://gitee.com/RT-Thread-Mirror/ucloud-iot-rtthread-package.git
git@gitee.com:RT-Thread-Mirror/ucloud-iot-rtthread-package.git
RT-Thread-Mirror
ucloud-iot-rtthread-package
ucloud-iot-rtthread-package
master

搜索帮助