

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Aplicación de demostración de detección de AWS IoT Greengrass V1
<a name="gg-demov1"></a>

**importante**  <a name="deprecation-message-demo"></a>
Esta demostración está alojada en el repositorio de Amazon-FreeRTOS, que está en desuso. Recomendamos [empezar por aquí](freertos-getting-started-modular.md) al crear un nuevo proyecto. Si ya tiene un proyecto FreeRTOS existente basado en el repositorio Amazon FreeRTOS, ahora obsoleto, consulte [Guía de migración del repositorio Github de Amazon-FreeRTOS](github-repo-migration.md).

Antes de ejecutar la demostración de detección de AWS IoT Greengrass para FreeRTOS, debe configurar AWS, AWS IoT Greengrass y AWS IoT. Para configurar AWS, siga las instrucciones de [Configurar tu AWS cuenta y tus permisos](freertos-prereqs.md#freertos-account-and-permissions). Para configurar AWS IoT Greengrass, tiene que crear un grupo de Greengrass y, a continuación, añadir un núcleo de Greengrass. Para obtener más información acerca de la configuración de AWS IoT Greengrass, consulte [Introducción a AWS IoT Greengrass](https://docs.aws.amazon.com/greengrass/latest/developerguide/gg-gs.html). 

Después de configurar AWS y AWS IoT Greengrass, tiene que configurar algunos permisos adicionales para AWS IoT Greengrass.

**Configuración de permisos de AWS IoT Greengrass**

1. Vaya a la [consola de IAM](https://console.aws.amazon.com/iam/home).

1. En el panel de navegación, elija **Roles** y, a continuación, busque y seleccione **Greengrass\$1ServiceRole**.

1. Elija **Attach policies (Asociar políticas)**, seleccione **AmazonS3FullAccess** y **AWSIoTFullAccess** y, a continuación, elija **Attach policy (Asociar política)**.

1. Vaya a la [consola de AWS IoT](https://console.aws.amazon.com/iotv2/).

1. En el panel de navegación, elija **Greengrass**, elija **Groups (Grupos)** y, a continuación, elija el grupo de Greengrass que creó con anterioridad.

1. Elija **Settings (Configuración)** y, a continuación, elija **Add role (Añadir rol)**.

1. Elija **Greengrass\$1ServiceRole** y, a continuación, elija **Save (Guardar)**.

Conecte la placa a AWS IoT y configure la demostración de FreeRTOS.

1. [Registrar su placa MCU con AWS IoT](freertos-prereqs.md#get-started-freertos-thing)

   Después de registrar su placa, tiene que crear y asociar una nueva política de Greengrass al certificado del dispositivo.

**Creación de una nueva política de AWS IoT Greengrass**

   1. Vaya a la [consola de AWS IoT](https://console.aws.amazon.com/iotv2/).

   1. En el panel de navegación, elija **Secure (Seguridad)**, elija **Policies (Políticas)** y, a continuación, elija **Create (Crear)**.

   1. Especifique un nombre que identifique la política.

   1. En la sección **Añadir declaraciones**, elija **Modo avanzado**. Copie y pegue la siguiente política JSON en la ventana del editor de políticas:

      ```
      {
            "Effect": "Allow",
            "Action": [
              "greengrass:*"
            ],
            "Resource": "*"
      }
      ```

      Esta política concede los permisos de AWS IoT Greengrass a todos los recursos.

   1. Seleccione **Crear**.

**Asociación de la política de AWS IoT Greengrass al certificado de su dispositivo**

   1. Vaya a la [consola de AWS IoT](https://console.aws.amazon.com/iotv2/).

   1. En el panel de navegación, elija **Manage (Administrar)**, elija **Things (Objetos)** y, a continuación, elija el objeto que creó anteriormente.

   1. Elija **Security (Seguridad)** y, a continuación, elija el certificado asociado a su dispositivo.

   1. Elija **Policies (Políticas)**, elija **Actions (Acciones)** y, a continuación, **Attach Policy (Asociar política)**.

   1. Encuentre y elija la política de Greengrass que creó anteriormente y, a continuación, elija **Attach (Asociar)**.

1. [Descarga de FreeRTOS](freertos-prereqs.md#freertos-download)
**nota**  
Si va a descargar FreeRTOS desde la consola de FreeRTOS, seleccione **Conectar a AWS IoT Greengrass- *Plataforma*** en lugar de **Conectar a AWS IoT- *Plataforma***.

1. [Configuración de las demostraciones de FreeRTOS](freertos-prereqs.md#freertos-configure).

   Abra `freertos/vendors/vendor/boards/board/aws_demos/config_files/aws_demo_config.h`, comente `#define CONFIG_CORE_MQTT_MUTUAL_AUTH_DEMO_ENABLED` y defina `CONFIG_GREENGRASS_DISCOVERY_DEMO_ENABLED`.

Después de configurar AWS IoT y AWS IoT Greengrass y, una vez que haya descargado y configurado FreeRTOS, puede compilar, instalar y ejecutar la demostración de Greengrass en su dispositivo. Para configurar el entorno de desarrollo de hardware y software de la placa, siga las instrucciones que se describen en la [Guías de introducción específicas de placas](getting-started-guides.md).

La demostración de Greengrass publica una serie de mensajes en el núcleo de Greengrass y en el cliente de MQTT de AWS IoT. Para ver los mensajes en el cliente de MQTT de AWS IoT, abra la [consola de AWS IoT](https://console.aws.amazon.com/iotv2/), elija **Prueba** y, a continuación, elija el **cliente de prueba MQTT** y añada una suscripción a `freertos/demos/ggd`.

En el cliente de MQTT, debería ver las siguientes cadenas:

```
Message from Thing to Greengrass Core: Hello world msg #1!
Message from Thing to Greengrass Core: Hello world msg #0!
Message from Thing to Greengrass Core: Address of Greengrass Core found! 123456789012.us-west-2.compute.amazonaws.com
```

## Uso de una instancia de Amazon EC2
<a name="gg-demo-ec2"></a>

**Si trabaja con una instancia de Amazon EC2**

1. Busque el DNS público (IPv4) asociado a su instancia de Amazon EC2: vaya a la consola de Amazon EC2 y, en el panel de navegación izquierdo, elija **Instancias**. Elija su instancia de Amazon EC2 y, a continuación, elija el panel **Descripción**. Busque la entrada para el **DNS público (IPv4)** y anótela.

1. Busque la entrada para **Grupos de seguridad** y elija el grupo de seguridad asociado con la instancia de Amazon EC2.

1. Elija la pestaña **Reglas de entrada** y, a continuación, elija **Editar reglas de entrada** y agregue las siguientes reglas.  
**Reglas de entrada**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/freertos/latest/userguide/gg-demov1.html)

1. En la consola de AWS IoT, elija **Greengrass** y, a continuación, **Grupos** y elija el grupo Greengrass que creó anteriormente. Seleccione **Configuración**. Cambie la **Detección de conexión local** a **Administrar manualmente la información de conexión**.

1. En el panel de navegación, elija **Núcleos** y, a continuación, seleccione el núcleo del grupo.

1. Elija **Conectividad** y asegúrese de que solo tiene un punto de enlace principal (elimine el resto) y que no es una dirección IP (porque está sujeta a cambios). La mejor opción es usar el DNS público (IPv4) que anotó en el primer paso.

1. Agregue el objeto de FreeRTOS IoT que creó en el grupo GG.

   1. Elija la flecha hacia atrás para volver a la página del grupo AWS IoT Greengrass. En el panel de navegación, elija **Dispositivos** y, a continuación, elija **Agregar dispositivo**.

   1. Elija **Seleccionar un objeto de IoT**. Elija su dispositivo y luego elija **Finalizar**.

1. Añada las suscripciones necesarias: en la página **Grupo de Greengrass**, elija **Suscripciones** y, a continuación, seleccione **Añadir suscripción** e introduzca la información que se muestra aquí.  
**Suscripciones**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/freertos/latest/userguide/gg-demov1.html)

   Donde “Fuente” es el nombre asignado al objeto de AWS IoT que se creó en la consola de AWS IoT cuando registró la placa (“TIGG1” en el ejemplo que se muestra aquí).

1. Comience una implementación de su grupo AWS IoT Greengrass y asegúrese de que la implementación tenga éxito. Ahora debería poder ejecutar correctamente la demostración de detección de AWS IoT Greengrass.