Requisitos previos para las actualizaciones de OTA mediante MQTT
En esta sección se describen los requisitos generales para utilizar MQTT para realizar actualizaciones vía inalámbrica (OTA).
Requisitos mínimos
-
El firmware del dispositivo debe incluir las bibliotecas de FreeRTOS necesarias (agente de coreMQTT, actualización OTA y sus dependencias).
-
Se necesita la versión 1.4.0 o posterior de FreeRTOS. Sin embargo, le recomendamos que utilice la versión más reciente cuando sea posible.
Configuraciones
A partir de la versión 201912.00, OTA de FreeRTOS puede utilizar el protocolo HTTP o MQTT para transferir imágenes de actualización de firmware desde AWS IoT a dispositivos. Si especifica ambos protocolos al crear una actualización OTA en FreeRTOS, cada dispositivo determinará el protocolo utilizado para transferir la imagen. Para obtener más información, consulte Requisitos previos para las actualizaciones de OTA mediante HTTP.
De manera predeterminada, la configuración de los protocolos OTA en ota_config.h
Configuraciones específicas del dispositivo
Ninguna.
Uso de memoria
Cuando se utiliza MQTT para la transferencia de datos, no se requiere memoria adicional para la conexión MQTT porque se comparte entre operaciones de control y datos.
Política de dispositivos
Cada dispositivo que reciba una actualización OTA utilizando MQTT debe estar registrado como una cosa AWS IoT y debe tener una política adjunta como la que se muestra aquí. Puede encontrar más información acerca de los elementos de los objetos "Resource" y "Action" en las Acciones de la política principal de AWS IoT y en los recursos de acciones principales de AWS IoT.
Notas
-
Los permisos
iot:Connectpermiten que su dispositivo se conecte a AWS IoT a través de MQTT. -
Los permisos
iot:Subscribeyiot:Publishen los temas de trabajos de AWS IoT (.../jobs/*) permiten que el dispositivo conectado reciba notificaciones de trabajo y documentos de trabajo, y publique el estado de finalización de una ejecución de trabajo. -
Los permisos
iot:Subscribeyiot:Publishen los temas de flujos de OTA de AWS IoT (.../streams/*) permiten que el dispositivo conectado obtenga datos de actualización de OTA desde AWS IoT. Estos permisos son necesarios para realizar actualizaciones de firmware sobre MQTT. -
Los permisos
iot:Receivepermiten a AWS IoT Core publicar mensajes sobre esos temas en el dispositivo conectado. Este permiso se verifica en cada entrega de un mensaje MQTT. Puede utilizar este permiso para revocar el acceso a los clientes que están actualmente suscritos a un tema.