AWS IoT - 找不到 C SDK 来配置设备
AWS IoT - Cannot locate C SDK to configure device
当我在 AWS IoT 控制台中单击 Onboard 选项时,我看到了一个用于注册事物的选项。单击它,然后单击“开始”,向我显示 select 用于注册 SDK 的页面。第一步是selectOS然后是语言。此时,我没有看到 select C 或 C++ SDK 的选项!
AWS IoT SDKs shows the C/C++ SDK. But, the page for AWS IoT Device SDK 的页面未显示 C++ SDK。
- 那么,这些各种 AWS SDK 是什么?它们有什么不同?
- AWS IoT SDK 和 Eclipse Paho 连接到 MQTT 代理的客户端有什么区别?
- Eclipse Paho 客户端连接到 AWS IoT MQTT 端点可能需要进行哪些更改?
我的目标是在 C/C++ 中为 RTOS 设备构建 MQTT 客户端。我会在设备上注册它 'outside'。
1。不同的 SDK
在 AWS IOT 方面,AWS SDK 主要有 2 类。
- 您在设备
上拥有通常运行的设备 SDK
- 您通常在云中 运行 拥有 AWS SDK
两者都有多种语言版本。设备 SDK 通常使用 MQTT 和 x509 证书对 AWS IOT 进行身份验证,但您也可以通过 https 进行通信。 An overview of the supported protocols for iot clients can be found here。请记住,设备通常倾向于使用 bi-directional 与使用 MQTT(发布/订阅)的 aws iot 进行长期通信。 http 协议只能用于从设备向 AWS IOT 发送消息。
如果您使用的是基于 C 的系统,您有 2 个选择:
- CPP : https://github.com/aws/aws-iot-device-sdk-cpp
- 嵌入式 C 语言:https://github.com/aws/aws-iot-device-sdk-embedded-C
这些使用标准 MQTT 通信。
2。 AWS IoT SDK 与 Eclipse Paho 的区别
两者都将使用 MQTT / x509 证书和 MQTT_SSL_VERSION_TLS_1_2。
从理论上讲,两者都应该与 Aws IOT 一起工作,我已经看到 Eclispe Paho MQTT 客户端在 C++ 运行ning 中针对 Aws IOT 的工作示例。
根据我的经验,您通常最好使用供应商 SDK,因为它们比更通用的 MQTT 库有更好的支持/示例/功能。
与云无关并使用 MQTT/Paho 等标准协议/库来避免 (aws) 供应商 lock-in.
也有一些价值
3。 Paho 客户端和 AWS IOT
AWS IoT 需要 TLS V1.2,因此您的 Paho 客户端需要支持它。我相信 should be possible now Paho cpp。
当我在 AWS IoT 控制台中单击 Onboard 选项时,我看到了一个用于注册事物的选项。单击它,然后单击“开始”,向我显示 select 用于注册 SDK 的页面。第一步是selectOS然后是语言。此时,我没有看到 select C 或 C++ SDK 的选项!
AWS IoT SDKs shows the C/C++ SDK. But, the page for AWS IoT Device SDK 的页面未显示 C++ SDK。
- 那么,这些各种 AWS SDK 是什么?它们有什么不同?
- AWS IoT SDK 和 Eclipse Paho 连接到 MQTT 代理的客户端有什么区别?
- Eclipse Paho 客户端连接到 AWS IoT MQTT 端点可能需要进行哪些更改?
我的目标是在 C/C++ 中为 RTOS 设备构建 MQTT 客户端。我会在设备上注册它 'outside'。
1。不同的 SDK
在 AWS IOT 方面,AWS SDK 主要有 2 类。
- 您在设备 上拥有通常运行的设备 SDK
- 您通常在云中 运行 拥有 AWS SDK
两者都有多种语言版本。设备 SDK 通常使用 MQTT 和 x509 证书对 AWS IOT 进行身份验证,但您也可以通过 https 进行通信。 An overview of the supported protocols for iot clients can be found here。请记住,设备通常倾向于使用 bi-directional 与使用 MQTT(发布/订阅)的 aws iot 进行长期通信。 http 协议只能用于从设备向 AWS IOT 发送消息。
如果您使用的是基于 C 的系统,您有 2 个选择:
- CPP : https://github.com/aws/aws-iot-device-sdk-cpp
- 嵌入式 C 语言:https://github.com/aws/aws-iot-device-sdk-embedded-C
这些使用标准 MQTT 通信。
2。 AWS IoT SDK 与 Eclipse Paho 的区别
两者都将使用 MQTT / x509 证书和 MQTT_SSL_VERSION_TLS_1_2。 从理论上讲,两者都应该与 Aws IOT 一起工作,我已经看到 Eclispe Paho MQTT 客户端在 C++ 运行ning 中针对 Aws IOT 的工作示例。
根据我的经验,您通常最好使用供应商 SDK,因为它们比更通用的 MQTT 库有更好的支持/示例/功能。
与云无关并使用 MQTT/Paho 等标准协议/库来避免 (aws) 供应商 lock-in.
也有一些价值3。 Paho 客户端和 AWS IOT
AWS IoT 需要 TLS V1.2,因此您的 Paho 客户端需要支持它。我相信 should be possible now Paho cpp。