全部产品
云市场

SDK获取

更新时间:2019-11-11 11:35:02

概述

C语言Link Kit SDK适用于使用C语言开发业务处理逻辑的设备, 由于C语言运行速度快、需要的运行内存较少, 目前大多数的IoT设备使用C语言进行产品开发。

重要通知生活物联网平台推出了专有的设备端SDK,针对生活场景增加了一些新的功能,若产品接入生活物联网平台请参照生活物联网平台的开发文档进行SDK获取以及产品开发。

SDK获取

SDK 3.X

  • 稳定版本:3.0.1 (推荐)
  • 最新版本:3.1.0 (支持X.509认证)

注:

  • SDK 2.3.0版本SDK的开发文档可以通过此处访问
  • 用户如果正在使用SDK2.3.0开发产品,并且想升级到SDK3.0.1,可以查看版本变更记录

历史版本

访问SDK历史版本

SDK使用说明

SDK提供了API供设备厂商调用,用于实现与阿里云IoT平台通信以及一些其它的辅助功能,比如WiFi配网、本地控制等。

另外,C语言版本的SDK被设计为可以在不同的操作系统上运行,比如Linux、FreeRTOS、Windows,因此SDK需要OS或者硬件支持的操作被定义为一些HAL函数,设备厂商在使用SDK开发产品时需要将这些HAL函数进行实现。

产品的业务逻辑、SDK、HAL的关系如下图所示:

其中产品业务逻辑和HAL需要设备厂商实现,SDK的目录wrappers\os下提供了针对Linux、FreeRTOS的部分HAL参考实现供参考。

对于初次接触阿里云IoT的用户,请点击《快速体验》了解如何在Ubuntu上将一个模拟设备接入阿里云IoT,从而理解一些基本的概念。

设备接入引导

SDK裁剪

MCU上集成SDK

如果您的产品使用MCU外接一个WiFi模组、2/3/4G、NB-IoT移动通信模组与互联网进行通信,并且您的产品业务需要在MCU上实现:

模组/SOC上集成SDK

如果您是模组商,或者是在一个支持TCP/IP的SOC上集成SDK,那么:

如果模组/SOC支持MQTT,请参见《在支持MQTT的模组上集成SDK
如果模组/SOC不支持MQTT但是支持TCP,请参见《在支持TCP的模组上集成SDK

SDK功能列表

下面的表格列出了目前最新版本C Link Kit SDK的功能:
注:表格中并没有对每种功能给出详细描述,在相应功能的开发章节中会对每个功能进行详细描述

功能模块 功能点
设备连云
- MQTT连云,设备可通过MQTT与阿里云IoT物联网平台通信
- CoAP连云,设备可通过CoAP与阿里云IoT物联网平台通信,用于设备主动上报信息的场景
- HTTPS连云,设备可通过HTTPS与阿里云IoT物联网平台通信,用于设备主动上报信息的场景
设备身份认证
- 一机一密
- 一型一密
物模型 使用属性、服务、事件对设备进行描述以及实现,包括:
- 属性上报、设置
- 服务调用
- 事件上报
云端region设置
- 厂商指定region,告知设备连接到阿里云的具体的云端站点,比如中国上海、新加坡、美国、法国
- 动态连云,设备自动连接到距离设备延时最短的云端站点
OTA 设备固件升级
远程配置 设备配置文件获取
子设备管理 用于让网关设备添加、删除子设备,以及对子设备进行控制
WiFi配网 将WiFi热点的SSID/密码传输给WiFi设备,包括:
- 一键配网
- 手机热点配网
- 设备热点配网
- 零配
设备本地控制 局域网内,通过CoAP协议对设备进行控制,包括:
ALCS Server,被控端实现
ALCS Client,控制端实现,通常被希望通过本地控制设备的网关使用
设备绑定支持 设备绑定token维护,设备通过WiFI、以太网接入,并且通过阿里云开放智能生活平台管理时使用
设备影子 在云端存储设备指定信息供APP查询,避免总是从设备获取信息引入的延时
Reset支持 当设备执行Factory Reset时,通知云端清除记录。比如清除设备与用户的绑定关系,清除网关与子设备的关联关系等。
时间获取 从阿里云物联网平台获取当前最新的时间
文件上传 通过HTTP2上传文件

历史版本清单

版本号 发布日期 下载链接 更新内容
3.1.0 2019/10/18 sdk下载
- 对关键过程增加状态码机制
- WiFi配网增强,解决AP Isolation、移除路由器配网方案、新增Linux平台的配网HAL函数参考代码
- 增加对X.509的支持
- OTA新增断点续传
- 子设备管理新增子设备/网关多对多拓扑关系
- 系统topic订阅优化,缩短订阅时间
3.0.1 2019/03/15 sdk下载
- 新增对异步/通知式的底层TCP/IP协议栈的支持
- 支持将选中功能对应的代码抽取出来,方便快速将SDK放入客户的编译环境进行编译
- 代码抽取时自动生成客户HAL适配文件
- 新增http2文件上传功能
- 配网增加设备热度配网方案
2.3.0 2018/11/19 sdk下载
- 新增一套物模型编程接口: 风格为 IOT_Linkkit_XXX(), 旧版接口 linkkit_xxx() 仍然保留
- 新增图形化配置方式支持
- WiFi配网的四种模式可以分离
2.2.1 2019/09/03 sdk下载
- 新增一型一密/动态注册功能
- 新增OTA使用iTLS下载固件功能
- WiFi配网功能开源发布
- 本地控制功能开源发布
2.2.0 2018/08/06 sdk下载 离线reset支持
简化版TSL支持
设备禁用/使能支持
TSL数组支持object类型
MQTT海外多站点连接支持
itls支持
2.1.0 2018/03/20 sdk下载
- 新增cmake编译系统
- 增加物模型支持
2.0.3 2018/01/31 sdk下载
- 子设备管理支持
- 优化tls,修复内存泄露
- 升级MQTT通道,支持更长的topic、支持更多的订阅请求、MQTT支持多线程
2.0.2 2017/11/30 sdk下载
- 新增mbedtls支持,目前适配Linux和Windows系统
- 优化HTTP接口,支持发送报文时不断开TLS连接
- 新增OpenSSL适配
- 支持用mingw32编译Win7的库和例程
- make reconfig可弹出和选择已适配平台

2.0.1 2017/10/10 sdk下载
- 新增基于CoAP通知方式的OTA
- 增加HTTP+TLS的云端连接通道
- 细化OTA状态
- 修正SDK在armcc编译器编译时出现的报错
2.0.0 2017/08/21 sdk下载
- 新增MQTT直连
- 新增CoAP通道
- 增加OTA功能
- 升级构建系统
1.0.1 2017/06/29 sdk下载 第一个正式配合华东2站点的设备端C SDK开源发布