如何安装 Arduino ThingsCloud ESP32/ESP8266 SDK
如何安装 Arduino ThingsCloud ESP32/ESP8266 SDK
获取详细代码示例和教程,请点击下边的 Github 地址,我们会持续更新教程。别忘了留下 Star,感谢支持!
https://github.com/IoT-ThingsCloud/thingscloud-esp-sdk
众所周知,ESP32/ESP8266 是风靡全球的 WiFi 芯片,同时可作为主控 MCU,支持 Arduino 开发框架。你可以随便买到各种各样的 ESP32/ESP8266 模组和开发板。

ThingsCloud 推出了基于 ESP32/ESP8266 Arduino 框架的 SDK,方便智能硬件厂商和开发者快速将设备接入 ThingsCloud 云平台并生成物联网应用,完成物联网方案的快速落地。
SDK 支持特性
- 实现 WiFi 基本连接,可指定 WiFi SSID/Password,连接到固定 AP。
- 实现 WiFi 手机配网,可使用 ThingsX iOS/Android App,为模组快速配置 WiFi 连接信息,而不需要事先将 Wifi SSID/Password 写入固件中。适合设备量产,由使用者自行配置 WiFi。
- 实现 MQTT 一机一密接入 ThingsCloud,为每个模组单独烧录 MQTT 证书。
- 实现 MQTT 一型一密接入 ThingsCloud,为所有模组烧录相同的固件,每个模组自动获取 MQTT 证书。适合设备量产。
- 全面支持 ThingsCloud MQTT 接入协议,几行代码就可以实现设备和云平台的双向数据实时传输,包括属性上报、属性下发接收、事件上报、命令下发接收、自定义数据流上报和接收等。
- 支持固件 OTA 升级,结合 ThingsCloud 的 OTA 版本管理功能。
使用 SDK 开发的示例:
支持模组型号
- ESP32
- ESP32-S2
- ESP32-S3
- ESP32-C3
- ESP32-C6(需安装 ESP32 开发板 v3.x.x)
- ESP8266/ESP8285
安装开发板依赖
SDK 基于 Arduino 框架,因此您需要先完成 Arduino 框架中 ESP32/ESP8266 的开发板依赖安装。
这里以 Arduino IDE 为例,进入 文件 > 首选项。
ESP32 开发板添加以下开发板仓库地址:
https://espressif.github.io/arduino-esp32/package_esp32_index.json
ESP8266 开发板添加以下开发板仓库地址:
https://arduino.esp8266.com/stable/package_esp8266com_index.json
如下图:

然后在开发板管理器中,根据您的实际需要,搜索并安装 ESP32 或 ESP8266 开发板。
ESP32 开发板支持 v2.x.x 和 v3.x.x,如下图:

ESP8266 开发板支持 v2.x.x 和 v3.x.x,如下图:

安装 SDK
SDK 支持通过以下方式安装:
Arduino
通过 Arduino 库管理器可以快速安装 SDK,以 Arduino 1.8 为例,进入 Arduino 菜单的 工具 > 管理库
,如下图:

在搜索框中输入 ThingsCloud
,出现 ThingsCloud_ESP_SDK
,点击安装,使用默认的最新版本。如下图:

如果相关的依赖库没有安装,则会提示是否安装其它依赖库,选择安装全部。如下图:

安装成功后,如下图:

如果使用 Arduino IDE 2.0,方法同上,界面略有不同,如下图:

按提示自动安装其它依赖库,如下图:

安装完成,如下图:

提示
当有版本更新时,可以在库管理中点击更新。
及时更新最新版本,可以获得更完善的 SDK,以及最新的示例代码库。
在 Arduino 文件 > 示例
中,可以快速添加示例代码,如下图:

更多示例代码即将推出,欢迎您的建议。
PlatformIO
使用 VSCode + PlatformIO 开发方式,可以直接在 PlatformIO Library 中搜索 ThingsCloud
,并添加到项目中。

获取详细代码示例和教程,请点击下边的 Github 地址,我们会持续更新教程。别忘了留下 Star,感谢支持!
https://github.com/IoT-ThingsCloud/thingscloud-esp-sdk
安装其它依赖库
SDK 正常运行需要以下依赖库:
如使用 PlatformIO IDE,依赖库将自动安装。如使用 Arduino IDE,软件会提示是否安装这些依赖库,同意后会自动安装。
ThingsCloud 准备工作
示例代码
如使用 Arduino IDE,可在 文件 > 示例
中,直接打开以下示例代码。
01.WiFi_Basic
普通 WiFi 连接方式,指定 WiFi SSID 和密码。
- mqtt_connect_with_access_token:每个设备使用自己的 AccessToken 连接 ThingsCloud
- mqtt_connect_with_device_key:每个设备使用 DeviceKey 请求 AccessToken,连接 ThingsCloud
- mqtt_connect_with_device_key_auto_create_device:每个设备使用 DeviceKey 请求 AccessToken,连接 ThingsCloud。如果 DeviceKey 的设备不存在,支持自动创建设备。
- mqtt_connect_with_auto_device_key:每个设备自动生成唯一的 DeviceKey,请求 AccessToken,连接 ThingsCloud。
02.WiFi_Provisioning_AP_Mode
不需要指定 WiFi SSID 和密码,用户通过 ThingsX App 完成 WiFi 配网。
- wifi_provisioning_cliam_device:WiFi 配网模式的示例,用户完成配网后领取设备。
- wifi_provisioning_reset:通过长按按键重置配网的示例。
03.MQTT_Communicate
设备 MQTT 通信示例。
- mqtt_attributes:设备上报设备属性、接收云平台下发属性、读取云平台的设备属性。
- mqtt_report_event:设备上报事件的示例。
- mqtt_recv_command:设备接收云平台下发命令的示例。
10.IoT_Tutorials
应用示例。
- dht_sensor:dht11/21/22 温湿度传感器上报数据。ESP32 + DHT11/DHT22 温湿度传感器接入 ThingsCloud
- relay_control:ThingsCloud 下发控制继电器。ESP32 + 继电器模块接入 ThingsCloud
- dtu_uart_stream:实现透传 DTU,主控 MCU 可通过 UART 和 ESP32 UART1 通信,云平台设备使用自定义数据流,支持二进制、文本、JSON,可通过规则引擎和设备属性进行互转。支持 WiFi 配网。
- dtu_uart_json:实现透传 DTU,主控 MCU 可通过 UART 和 ESP32 UART1 通信,上下行数据使用 JSON 格式,实现设备属性上报和属性下发。支持 WiFi 配网。
- command_ota:使用 ThingsCloud OTA,实现 ESP32 固件升级。
更多示例代码即将推出……