AWS IoT - 找不到用于配置设备的 C 开发工具包
AWS IoT - Cannot locate C SDK to configure device
当我在 AWS IoT 控制台中单击板载选项时,我看到一个用于注册事物的选项。单击它,然后单击"开始使用",将显示一个页面,用于选择要注册的 SDK。第一步是选择操作系统,然后选择语言。此时,我没有看到选择 C 或 C++ SDK 的选项!
AWS IoT 开发工具包页面显示了 C/C++ 开发工具包。但是,AWS IoT 设备开发工具包的页面不显示C++开发工具包。
- 那么,这些不同的 AWS 开发工具包是什么?它们有何不同?
- 用于连接到 MQTT 代理的 AWS IoT 开发工具包和 Eclipse Paho 客户端之间有什么区别?
- Eclipse Paho 客户端可能需要哪些更改才能连接到 AWS IoT MQTT 端点?
我的目标是在 C/C++ 中为 RTOS 设备构建 MQTT 客户端。我会在设备的"外部"注册它。
1. 不同的软件开发工具包
AWSIOT 有 2 个主要类别的 AWS 开发工具包。
- 你拥有通常在设备上运行的设备 SDK
- 您拥有通常在云中运行的 AWS 开发工具包
两者都有多种语言。设备开发工具包通常使用 MQTT 和 x509 证书对 AWS IOT 进行身份验证,但您也可以通过 https 进行通信。可在此处找到 IoT 客户端支持的协议概述。请记住,设备通常倾向于使用 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 开发工具包和 Eclipse Paho 之间的区别
两者都将使用MQTT/x509证书和MQTT_SSL_VERSION_TLS_1_2。 理论上两者都应该与 Aws IOT 一起使用,我已经看到了 Eclispe Paho MQTT 客户端在C++中针对 Aws IOT 运行的工作示例。
根据我的经验,您通常最好使用供应商 SDK,因为它们将比更通用的 MQTT 库提供更好的支持/示例/功能。
与云无关并使用MQTT/Paho等标准协议/库来避免(aws)供应商锁定也有一些价值。
3. 泛美卫生客户端和 AWS 物联网
AWS IoT 需要 TLS V1.2,因此您的 Paho 客户端需要支持这一点。我相信现在应该可以通过Paho cpp。
- AWS IoT 开发工具包:通过 TCP 端口 443 使用 MQTT
- 使用 AWS C++ 开发工具包分段上传 S3
- 与 AWS 开发工具包的链接问题
- CMake 工具链文件:嵌入式开发的适当值"CMAKE_SYSTEM_PROCESSOR"
- 使用代码在 AWS 开发工具包C++控制台应用程序上设置凭证
- 如何使用 AWS C++ 开发工具包在给定的开始和结束日期范围内列出 S3 中的文件
- 适用于 C++ 的 AWS 开发工具包:对 S3 传输进行完整性检查
- 在 Cloud9 上安装 AWS C++ 开发工具包时出现问题
- AWS Lambda C++ 开发工具包"Process exited before completing request"
- 使用开发工具包将文件上传到 AWS C++
- AWS 开发工具包 C++ 代码不适用于发布版本
- 为什么使用适用于C++的 AWS 开发工具包创建 EC2Client 段错误
- AWS CPP S3 开发工具包是否支持"传输加速"
- AWS 开发工具包C++:某些 S3 集成测试失败
- AWS IoT - 找不到用于配置设备的 C 开发工具包
- AWS-开发工具包-CPP:未解析的符号
- 如何使用适用于 S3 的 AWS 开发工具包 cpp 异步 API?
- 我已安装的GCC版本是我已安装的RedHat开发人员工具集的背后
- 代码块使用Visual C++开发人员工具运行
- dev 使用开发C++开发世界粮食计划署