配置 coreMQTT 库
边缘设备可以使用 MQTT 协议与 Amazon 云通信。Amazon IoT 中托管一个 MQTT 代理,可与连接的边缘设备相互发送和接收消息。
coreMQTT 库会为运行 FreeRTOS 的设备实现 MQTT 协议。不需要移植 coreMQTT 库,但您设备的测试项目必须通过所有 MQTT 测试才能获得资格。有关更多信息,请参阅《FreeRTOS 用户指南》中的 coreMQTT 库。
先决条件
要设置 coreMQTT 库测试,您需要一个网络传输接口移植。请参阅移植网络传输接口,了解更多信息。
测试
运行 coreMQTT 集成测试:
向 MQTT 代理注册客户端证书。
在
config中设置代理端点并运行集成测试。
创建参考 MQTT 演示
我们建议使用 coreMQTT 代理来处理所有 MQTT 操作的线程安全。用户还需要发布和订阅任务以及 Device Advisor 测试,以验证应用程序是否有效地集成了 TLS、MQTT 和其他 FreeRTOS 库。
要使设备正式获得 FreeRTOS 的资格,请使用 Amazon IoT Device Tester MQTT 测试用例验证您的集成项目。有关设置和测试的说明,请参阅 Amazon IoT Device Advisor 工作流程。下面列出了 TLS 和 MQTT 的强制测试用例:
| 测试用例 | 测试用例 | 必需测试 |
|---|---|---|
| TLS | TLS 连接 | 是 |
| TLS | TLS 支持 Amazon IoT 密码套件 | 推荐的密码套件 |
| TLS | TLS 不安全服务器证书 | 是 |
| TLS | TLS 主题名称服务器证书不正确 | 是 |
| 测试用例 | 测试用例 | 必需测试 |
|---|---|---|
| MQTT | MQTT Connect | 是 |
| MQTT | MQTT Connect 抖动重试次数 | 是,无警告 |
| MQTT | MQTT 订阅 | 是 |
| MQTT | MQTT 发布 | 是 |
| MQTT | MQTT ClientPuback QoS1 | 是 |
| MQTT | MQTT No Ack PingResp | 是 |