<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Cloud, DevOps e IoT en español</title>
    <link>https://iot.gripe</link>
    <description>Guías prácticas de Cloud, DevOps e IoT en español, escritas desde proyectos reales</description>
    <language>es</language>
    <atom:link href="https://iot.gripe/feed.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Pinout del ESP32 DevKit explicado: qué pin usar para cada cosa</title>
      <link>https://iot.gripe/blog/pinout-esp32-devkit-explicado</link>
      <guid isPermaLink="true">https://iot.gripe/blog/pinout-esp32-devkit-explicado</guid>
      <pubDate>Wed, 21 Oct 2026 06:00:00 GMT</pubDate>
      <description>Pinout del ESP32 DevKitC de 30 y 38 pines explicado: pines solo de entrada, flash, arranque, ADC1 frente a ADC2, DAC, táctiles, I2C, SPI y UART, con una lista de pines seguros.</description>
    </item>
    <item>
      <title>Pines del ESP32-S3: cuáles usar, cuáles evitar y por qué</title>
      <link>https://iot.gripe/blog/pines-esp32-s3-cuales-usar</link>
      <guid isPermaLink="true">https://iot.gripe/blog/pines-esp32-s3-cuales-usar</guid>
      <pubDate>Tue, 20 Oct 2026 06:00:00 GMT</pubDate>
      <description>Guía de los GPIO del ESP32-S3 DevKitC-1: pines de arranque, USB nativo, PSRAM octal, ADC1 frente a ADC2, JTAG y pines por defecto de I2C y SPI. Con una lista de pines seguros.</description>
    </item>
    <item>
      <title>De proyecto casero a producto IoT: qué cambia cuando tus dispositivos salen de tu casa</title>
      <link>https://iot.gripe/blog/de-proyecto-casero-a-producto-iot</link>
      <guid isPermaLink="true">https://iot.gripe/blog/de-proyecto-casero-a-producto-iot</guid>
      <pubDate>Mon, 19 Oct 2026 06:00:00 GMT</pubDate>
      <description>Qué hay que resolver para pasar de un prototipo IoT a un producto con clientes: aprovisionamiento, aislamiento, usuarios, actualizaciones, infraestructura como código, costos y normas.</description>
    </item>
    <item>
      <title>Casa inteligente DIY desde cero con ESP32 y AWS: guía para planificarla</title>
      <link>https://iot.gripe/blog/casa-inteligente-diy-esp32-aws</link>
      <guid isPermaLink="true">https://iot.gripe/blog/casa-inteligente-diy-esp32-aws</guid>
      <pubDate>Sun, 18 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo planificar una casa inteligente hecha por ti: local o en la nube, qué hardware elegir, cómo comunicar los dispositivos, seguridad eléctrica, control por voz y costos.</description>
    </item>
    <item>
      <title>Cómo instalar firmware en un ESP32: USB, navegador u OTA, y cuándo usar cada uno</title>
      <link>https://iot.gripe/blog/flashear-esp32-usb-navegador-ota</link>
      <guid isPermaLink="true">https://iot.gripe/blog/flashear-esp32-usb-navegador-ota</guid>
      <pubDate>Sat, 17 Oct 2026 06:00:00 GMT</pubDate>
      <description>Guía de las tres formas de instalar y actualizar firmware en un ESP32: por USB con Arduino o esptool, desde el navegador con ESP Web Tools y a distancia por OTA, con sus riesgos.</description>
    </item>
    <item>
      <title>Cuánto cuesta desplegar una API Spring Boot en AWS: 4 opciones comparadas</title>
      <link>https://iot.gripe/blog/cuanto-cuesta-spring-boot-aws</link>
      <guid isPermaLink="true">https://iot.gripe/blog/cuanto-cuesta-spring-boot-aws</guid>
      <pubDate>Fri, 16 Oct 2026 06:00:00 GMT</pubDate>
      <description>Costo mensual aproximado de desplegar una API Java con Spring Boot en AWS con EC2, Elastic Beanstalk, ECS con Fargate y Lambda: supuestos, tabla comparativa, costos ocultos (IPs públicas, NAT, balanceador) y cuál elegir.</description>
    </item>
    <item>
      <title>Seguridad IoT de extremo a extremo: del ESP32 a la nube, capa por capa</title>
      <link>https://iot.gripe/blog/seguridad-iot-extremo-a-extremo</link>
      <guid isPermaLink="true">https://iot.gripe/blog/seguridad-iot-extremo-a-extremo</guid>
      <pubDate>Fri, 16 Oct 2026 06:00:00 GMT</pubDate>
      <description>Guía práctica de seguridad para proyectos IoT con ESP32 y AWS: identidad por dispositivo, red, nube, usuarios y operación, con una lista de comprobación y ejemplos.</description>
    </item>
    <item>
      <title>Error &quot;was not declared in this scope&quot; con un struct en Arduino: la causa y 4 soluciones</title>
      <link>https://iot.gripe/blog/arduino-was-not-declared-in-this-scope-struct</link>
      <guid isPermaLink="true">https://iot.gripe/blog/arduino-was-not-declared-in-this-scope-struct</guid>
      <pubDate>Thu, 15 Oct 2026 06:00:00 GMT</pubDate>
      <description>Por qué el IDE de Arduino dice que tu struct no está declarado aunque lo esté: los prototipos automáticos de los .ino y cómo evitar el error en ESP32 y Arduino.</description>
    </item>
    <item>
      <title>AWS IoT Core: qué es, cómo funciona y cuándo usarlo en tu proyecto</title>
      <link>https://iot.gripe/blog/aws-iot-core-que-es</link>
      <guid isPermaLink="true">https://iot.gripe/blog/aws-iot-core-que-es</guid>
      <pubDate>Thu, 15 Oct 2026 06:00:00 GMT</pubDate>
      <description>Guía de AWS IoT Core en español: broker MQTT, Things, certificados, políticas, Device Shadow, reglas, precios y límites, con ejemplos de un proyecto real con ESP32.</description>
    </item>
    <item>
      <title>Cómo aprobar el AWS Cloud Practitioner (CLF-C02): plan de estudio y recursos</title>
      <link>https://iot.gripe/blog/aws-cloud-practitioner-como-aprobar</link>
      <guid isPermaLink="true">https://iot.gripe/blog/aws-cloud-practitioner-como-aprobar</guid>
      <pubDate>Wed, 14 Oct 2026 06:00:00 GMT</pubDate>
      <description>Guía para aprobar la certificación AWS Certified Cloud Practitioner: cómo es el examen, qué entra en cada dominio, un plan de 4 semanas, recursos gratuitos, los servicios que más se confunden y qué hacer el día del examen.</description>
    </item>
    <item>
      <title>ESP-NOW, Wi-Fi, Bluetooth o MQTT: cómo comunicar tus dispositivos ESP32</title>
      <link>https://iot.gripe/blog/esp-now-wifi-ble-mqtt-comparativa</link>
      <guid isPermaLink="true">https://iot.gripe/blog/esp-now-wifi-ble-mqtt-comparativa</guid>
      <pubDate>Wed, 14 Oct 2026 06:00:00 GMT</pubDate>
      <description>Guía para elegir cómo se comunican tus ESP32: qué es ESP-NOW, qué es MQTT, cuándo usar Wi-Fi o Bluetooth, y cómo combinarlos con una pasarela, como en un proyecto real.</description>
    </item>
    <item>
      <title>13 errores reales al construir domótica con ESP32 y AWS IoT (y cómo los resolví)</title>
      <link>https://iot.gripe/blog/errores-reales-domotica-esp32-aws</link>
      <guid isPermaLink="true">https://iot.gripe/blog/errores-reales-domotica-esp32-aws</guid>
      <pubDate>Tue, 13 Oct 2026 06:00:00 GMT</pubDate>
      <description>Los fallos que más tiempo me costaron con ESP32, ESP-NOW, MQTT, Device Shadow y Cognito: síntoma, causa real y solución de cada uno.</description>
    </item>
    <item>
      <title>Qué es el ESP32: modelos, usos y cómo elegir el tuyo</title>
      <link>https://iot.gripe/blog/que-es-esp32-guia</link>
      <guid isPermaLink="true">https://iot.gripe/blog/que-es-esp32-guia</guid>
      <pubDate>Tue, 13 Oct 2026 06:00:00 GMT</pubDate>
      <description>El ESP32 es un microcontrolador barato con Wi-Fi y Bluetooth. Diferencias entre ESP32, S3, C3 y C6, cómo se programa y qué placa elegir para tu proyecto IoT.</description>
    </item>
    <item>
      <title>Checklist de seguridad para una app IoT: dispositivos, nube y web</title>
      <link>https://iot.gripe/blog/checklist-seguridad-app-iot</link>
      <guid isPermaLink="true">https://iot.gripe/blog/checklist-seguridad-app-iot</guid>
      <pubDate>Mon, 12 Oct 2026 06:00:00 GMT</pubDate>
      <description>Lista de comprobación para revisar la seguridad de un proyecto IoT con ESP32 y AWS: identidad de los dispositivos, políticas, comunicación local, APIs y Lambdas, la web app, secretos y qué hacer si algo se filtra.</description>
    </item>
    <item>
      <title>Cuánto cuesta un proyecto IoT en AWS: cómo estimarlo</title>
      <link>https://iot.gripe/blog/cuanto-cuesta-iot-aws</link>
      <guid isPermaLink="true">https://iot.gripe/blog/cuanto-cuesta-iot-aws</guid>
      <pubDate>Mon, 12 Oct 2026 06:00:00 GMT</pubDate>
      <description>Qué cobra cada servicio de AWS en un proyecto de domótica con ESP32 (IoT Core, Shadow, reglas, Cognito, Lambda, DynamoDB), un cálculo de ejemplo para una casa, qué dispara el costo y cómo vigilarlo.</description>
    </item>
    <item>
      <title>Saber si un ESP32 está conectado: eventos de ciclo de vida en AWS IoT</title>
      <link>https://iot.gripe/blog/detectar-dispositivo-desconectado-aws-iot</link>
      <guid isPermaLink="true">https://iot.gripe/blog/detectar-dispositivo-desconectado-aws-iot</guid>
      <pubDate>Sun, 11 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo mostrar en la app si un dispositivo está en línea con AWS IoT Core: eventos de conexión y desconexión, el motivo de cada desconexión, guardarlo en el Shadow con una regla, Last Will, keepalive y nodos detrás de un hub.</description>
    </item>
    <item>
      <title>Flashear un ESP32 desde el navegador con ESP Web Tools, sin instalar nada</title>
      <link>https://iot.gripe/blog/flashear-esp32-desde-navegador</link>
      <guid isPermaLink="true">https://iot.gripe/blog/flashear-esp32-desde-navegador</guid>
      <pubDate>Sun, 11 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo agregar a una web app React un botón que detecta si conectas un ESP32-S3 o un ESP32-C3 y le instala el firmware correcto desde Chrome, con ESP Web Tools, el manifiesto y el borrado de la flash.</description>
    </item>
    <item>
      <title>Bombillo inteligente DIY con ESP32-C3 e interruptor de pared que funciona sin internet</title>
      <link>https://iot.gripe/blog/bombillo-inteligente-esp32-c3-interruptor</link>
      <guid isPermaLink="true">https://iot.gripe/blog/bombillo-inteligente-esp32-c3-interruptor</guid>
      <pubDate>Sat, 10 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo agregar un interruptor físico a un nodo ESP32-C3 de domótica: lógica de alternar, cableado sin resistencias, sincronización con la app y el Device Shadow, y seguridad al usar un relé.</description>
    </item>
    <item>
      <title>Aprovisionar dispositivos en AWS IoT con Fleet Provisioning</title>
      <link>https://iot.gripe/blog/fleet-provisioning-aws-iot</link>
      <guid isPermaLink="true">https://iot.gripe/blog/fleet-provisioning-aws-iot</guid>
      <pubDate>Sat, 10 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo dar a cada ESP32 su propio certificado sin quemarlo en el firmware: Fleet Provisioning por claim y por usuario de confianza, plantillas de aprovisionamiento, el hook de validación y alternativas.</description>
    </item>
    <item>
      <title>Portal cautivo en ESP32: configurar el Wi-Fi sin reprogramar</title>
      <link>https://iot.gripe/blog/portal-cautivo-esp32-wifi</link>
      <guid isPermaLink="true">https://iot.gripe/blog/portal-cautivo-esp32-wifi</guid>
      <pubDate>Fri, 09 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo hacer que un ESP32 sin configurar levante su propia red con un formulario web, abra la página sola con un servidor DNS, guarde el Wi-Fi en NVS y vuelva al portal si no puede conectarse.</description>
    </item>
    <item>
      <title>PWA con Vite y vite-plugin-pwa: instalable y que se actualice</title>
      <link>https://iot.gripe/blog/pwa-vite-service-worker-actualizacion</link>
      <guid isPermaLink="true">https://iot.gripe/blog/pwa-vite-service-worker-actualizacion</guid>
      <pubDate>Fri, 09 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo convertir una app React con Vite en una PWA instalable con vite-plugin-pwa: manifiesto, íconos, etiquetas para iPhone, dónde publicarla gratis y por qué una pestaña abierta no se actualiza sola.</description>
    </item>
    <item>
      <title>Políticas de AWS IoT: mínimo privilegio para cada dispositivo</title>
      <link>https://iot.gripe/blog/politicas-aws-iot-minimo-privilegio</link>
      <guid isPermaLink="true">https://iot.gripe/blog/politicas-aws-iot-minimo-privilegio</guid>
      <pubDate>Thu, 08 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo escribir políticas de AWS IoT Core seguras: acciones y recursos, la diferencia entre topic y topicfilter, variables como iot:Connection.Thing.ThingName, una sola política para toda la flota y cómo probarla.</description>
    </item>
    <item>
      <title>Reglas de AWS IoT: guardar datos y enviar alertas sin servidores</title>
      <link>https://iot.gripe/blog/reglas-aws-iot-alertas</link>
      <guid isPermaLink="true">https://iot.gripe/blog/reglas-aws-iot-alertas</guid>
      <pubDate>Thu, 08 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo usar el motor de reglas de AWS IoT Core: SQL sobre mensajes MQTT, guardar lecturas de un ESP32 en DynamoDB, enviar alertas por correo con SNS, acciones de error, permisos y costos.</description>
    </item>
    <item>
      <title>AWS CDK con TypeScript para un proyecto IoT: infraestructura como código</title>
      <link>https://iot.gripe/blog/aws-cdk-typescript-proyecto-iot</link>
      <guid isPermaLink="true">https://iot.gripe/blog/aws-cdk-typescript-proyecto-iot</guid>
      <pubDate>Wed, 07 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo definir con AWS CDK y TypeScript la infraestructura de un proyecto IoT: tabla de DynamoDB, Lambda con Function URL, permisos mínimos y política de IoT, recursos con estado y cómo adoptar lo que ya creaste a mano.</description>
    </item>
    <item>
      <title>Login con Amazon Cognito: usuarios, tokens y el estado FORCE_CHANGE_PASSWORD</title>
      <link>https://iot.gripe/blog/cognito-force-change-password</link>
      <guid isPermaLink="true">https://iot.gripe/blog/cognito-force-change-password</guid>
      <pubDate>Wed, 07 Oct 2026 06:00:00 GMT</pubDate>
      <description>Login con Cognito en React sin Amplify: registro solo por invitación, contraseña temporal, el reto NEW_PASSWORD_REQUIRED, recuperar contraseña, atributos personalizados y errores comunes.</description>
    </item>
    <item>
      <title>Controlar un ESP32 con Siri usando Atajos, paso a paso</title>
      <link>https://iot.gripe/blog/controlar-esp32-con-siri-atajos</link>
      <guid isPermaLink="true">https://iot.gripe/blog/controlar-esp32-con-siri-atajos</guid>
      <pubDate>Tue, 06 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo crear un Atajo de iOS que enciende o apaga un ESP32 con la voz: petición POST, token en una cabecera, varios dispositivos a la vez, automatizaciones y buenas prácticas de seguridad.</description>
    </item>
    <item>
      <title>Panel web con React y MQTT sobre AWS IoT Core</title>
      <link>https://iot.gripe/blog/panel-web-react-mqtt-aws-iot</link>
      <guid isPermaLink="true">https://iot.gripe/blog/panel-web-react-mqtt-aws-iot</guid>
      <pubDate>Tue, 06 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo conectar una app React a AWS IoT Core por MQTT sobre WebSocket: credenciales de Cognito, URL firmada con SigV4, la política de IoT que suele faltar, el Device Shadow en la interfaz y la reconexión.</description>
    </item>
    <item>
      <title>API serverless para controlar un ESP32 con AWS Lambda</title>
      <link>https://iot.gripe/blog/api-serverless-lambda-iot</link>
      <guid isPermaLink="true">https://iot.gripe/blog/api-serverless-lambda-iot</guid>
      <pubDate>Mon, 05 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo exponer una API HTTPS que cambia el estado de un ESP32 en AWS IoT Core: Lambda con Function URL o API Gateway, opciones de autenticación, permisos mínimos, validación y pruebas con curl.</description>
    </item>
    <item>
      <title>DynamoDB para IoT: cómo modelar dispositivos y lecturas de sensores</title>
      <link>https://iot.gripe/blog/dynamodb-datos-iot</link>
      <guid isPermaLink="true">https://iot.gripe/blog/dynamodb-datos-iot</guid>
      <pubDate>Mon, 05 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo diseñar tablas de DynamoDB para un proyecto IoT: empezar por las consultas, partition y sort key, dispositivos por casa, lecturas por tiempo con TTL, índices dispersos y errores comunes.</description>
    </item>
    <item>
      <title>Device Shadow en AWS IoT: estado deseado y reportado con un ESP32</title>
      <link>https://iot.gripe/blog/device-shadow-aws-iot-esp32</link>
      <guid isPermaLink="true">https://iot.gripe/blog/device-shadow-aws-iot-esp32</guid>
      <pubDate>Sun, 04 Oct 2026 06:00:00 GMT</pubDate>
      <description>Qué es el Device Shadow de AWS IoT, cómo funcionan desired, reported y delta, sus tópicos reservados, cómo diseñar el documento y cómo manejar varias salidas desde un ESP32.</description>
    </item>
    <item>
      <title>NVS y Preferences en ESP32: guardar configuración que sobrevive cortes</title>
      <link>https://iot.gripe/blog/nvs-preferences-esp32</link>
      <guid isPermaLink="true">https://iot.gripe/blog/nvs-preferences-esp32</guid>
      <pubDate>Sun, 04 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo guardar Wi-Fi, certificados y estructuras en la memoria NVS del ESP32 con Preferences: ejemplos, límites, un firmware único para varios dispositivos y cómo no desgastar la flash.</description>
    </item>
    <item>
      <title>ESP-NOW paso a paso: enviar órdenes entre ESP32 con confirmación</title>
      <link>https://iot.gripe/blog/esp-now-esp32-paso-a-paso</link>
      <guid isPermaLink="true">https://iot.gripe/blog/esp-now-esp32-paso-a-paso</guid>
      <pubDate>Sat, 03 Oct 2026 06:00:00 GMT</pubDate>
      <description>Cómo comunicar un ESP32 hub con varios nodos por ESP-NOW: el canal compartido, un mensaje con estructura propia, confirmación con tiempo de espera, límites y errores comunes.</description>
    </item>
    <item>
      <title>Conectar un ESP32 a AWS IoT Core paso a paso</title>
      <link>https://iot.gripe/blog/conectar-esp32-aws-iot-core</link>
      <guid isPermaLink="true">https://iot.gripe/blog/conectar-esp32-aws-iot-core</guid>
      <pubDate>Fri, 02 Oct 2026 06:00:00 GMT</pubDate>
      <description>Guía práctica para conectar un ESP32 a AWS IoT Core con MQTT, certificados X.509 y Device Shadow: política mínima, código Arduino y errores comunes.</description>
    </item>
    <item>
      <title>ESP32-S3 vs ESP32-C3: diferencias y cuál elegir</title>
      <link>https://iot.gripe/blog/esp32-s3-vs-esp32-c3</link>
      <guid isPermaLink="true">https://iot.gripe/blog/esp32-s3-vs-esp32-c3</guid>
      <pubDate>Thu, 01 Oct 2026 06:00:00 GMT</pubDate>
      <description>ESP32-S3 vs ESP32-C3: núcleos, RAM, PSRAM, USB y precio comparados. Cuál elegir como hub o como nodo y las trampas de las placas Super Mini.</description>
    </item>
    <item>
      <title>Arquitectura de una casa inteligente con ESP32 y AWS: las piezas y cómo encajan</title>
      <link>https://iot.gripe/blog/arquitectura-casa-inteligente-esp32-aws</link>
      <guid isPermaLink="true">https://iot.gripe/blog/arquitectura-casa-inteligente-esp32-aws</guid>
      <pubDate>Wed, 30 Sep 2026 06:00:00 GMT</pubDate>
      <description>Las tres capas de un sistema de domótica con ESP32 y AWS: dispositivos, nube y apps. Dispositivos conectados directo o con un hub ESP-NOW, Device Shadow, Cognito, Lambda y costos.</description>
    </item>
  </channel>
</rss>
