我一直在使用在RPi中实现的AWS IoT。我想知道是否可以使用Atmega328之类的控制器或某些基于NRF的控制器或STM32来发布和订阅AWS IoT MQTT代理?

我对此进行了一些研究,但我坚持如何使用证书对服务器进行身份验证。

如何将这些控制器与AWS IoT集成?

评论

这些都没有适当的连接性。为了经济地获得它,您可能最终会涉及到功能更强大的计算机,因此您最好使用它,而不用这些芯片。在其他情况下,如果您尽最大努力找到环形交叉路口,则可以这样做,但这从根本上来说是个坏主意。

这可能有用github.com/copercini/esp8266-aws_iot

感谢您的建议@ChrisStratton。您认为对身份验证要求有限的其他mqtt经纪人有可能吗?

您似乎没有抓住重点-Arduino本身没有有线或无线网络接口,因此无法与该服务进行通信。相比之下,这样做的经济性(ESP8266,Linux wifi路由器芯片等)将比Arduino拥有更轻松的时间来执行所需的操作。因此,解决通信问题,您可能会找到一种解决方案。

#1 楼

AWS IOT要求您的设备了解TCP / IP和加密。

ATMega328具有2K字节的RAM,但以太网帧的长度最多为1500字节。即使您可以接收到数据包,也将没有空间处理它。

nRF51822具有16K RAM,足以容纳以太网,但不足以进行TCP / IP和WiFi 。 (两者都需要存储很多状态。)

带有WiFi + TCP / IP的最小实用设备是ESP8266,它具有96K RAM。即使这样,您一次通常只能建立一个TCP连接。他们一直在便宜(2美元)。实际上,尝试在AtMega中添加WiFi意味着您要添加至少与ESP8266一样大的处理器。一些Arduino WiFi适配器的功率是ESP8266的10倍(价格是10倍)。

#2 楼

您可能想查看Amazon FreeRTOS。


Amazon FreeRTOS(a:FreeRTOS)是微控制器的操作系统,使小型,低功耗的边缘设备易于编程,部署和安全。 ,连接和管理。 Amazon FreeRTOS基于FreeRTOS内核(一种适用于微控制器的流行开源操作系统),并通过软件库对其进行了扩展,可轻松将小型,低功耗设备安全地连接到AWS IoT Core等AWS云服务或功能更强大的设备。运行AWS Greengrass的边缘设备。


支持将多个小型微控制器(包括STM32设备)与AWS连接(并为其设置凭据)。

评论


链接的STM32“设备”实际上是一个包含STM32的板,然后是Inventek串行WiFi子模块模块中的另一个STM32。一个有效的解决方案将仅在串行WiFi模块(或其等效电路)内部运行应用程序,而不是使用两个处理器来完成一个工作。

–克里斯·斯特拉顿(Chris Stratton)
'18 Mar 31'19:28