[IA fuera de Cloud] Mi experiencia con Jetson Nano Parte#1..

Qué pasa cuando la inteligencia artificial deja el cloud y empieza a correr directamente en dispositivos? En este artículo comparto mi experiencia con Jetson Nano y cómo conecta con mis inicios en IoT (MIT), donde desarrollé un dispositivo de detección de caídas con Raspberry Pi y Azure IoT Hub. Un cambio de paradigma: de enviar datos al cloud, a procesar y tomar decisiones en tiempo real en el propio dispositivo. Cloud + dispositivos, una combinación cada vez más clave.

AZUREELECTRÓNICAIAIOTLVL200

3/19/20265 min leer

Cuando la IA sale del cloud: mi experiencia con Jetson Nano (y por qué me volvió a conectar con IoT)

Hace años que trabajo con Azure, arquitecturas cloud y no tan clouds y, más recientemente, con inteligencia artificial (imposible no hacerlo). Es un terreno donde me siento incómodo y claramente eso atrapa: servicios gestionados, escalabilidad, pipelines bien armados, todo bastante ordenado.

Pero hace un tiempo me volvió a picar algo distinto de casi 500 pavos y unos 67TOPS que no se cuanto usaré al menos el 15%.

No tanto cómo escalar IA, sino qué pasa cuando la IA deja el cloud y empieza a correr directamente en un dispositivo físico.

Y eso me llevó a meterme con el curso “Getting Started with AI on Jetson Nano” de NVIDIA.

Lo interesante de este curso no es solo el contenido (clasificación de imágenes, regresión, inferencia, etc.), sino el contexto en el que sucede todo: un dispositivo físico, limitado, que tenés que preparar, conectar y hacer funcionar como en su momento, mi querido Arduino.

Y ahí es donde, casi sin buscarlo, me encontré volviendo varios años atrás.

Un déjà vu bastante claro: MIT + IoT + Raspberry

En su momento hice un programa de IoT en el MIT (Massachusetts), y para poder certificar tuve que desarrollar una tesis bastante particular.

La idea era resolver un problema real: detectar caídas en personas mayores.

El prototipo consistía en un dispositivo que se colocaba debajo de la suela del zapato. A partir de sensores (principalmente giroscopio y movimiento), el sistema analizaba el comportamiento de los abuelos, claramente quise sumar la parte de Azucar en Sangre y se me acabo el tiempo de tesis, sí, correcto, me quedo pendiente.

No se trataba solo de medir movimiento, sino de identificar patrones en vectores y para de contar:

  • Cambios bruscos de orientación

  • Ausencia de movimiento posterior

  • Posiciones anómalas mantenidas en el tiempo


Cuando el sistema detectaba un comportamiento compatible con una caída, enviaba una alerta a los familiares indicando que el abuelo/a podía haber sufrido un accidente.

Era algo bastante simple a nivel hardware, pero muy interesante desde el punto de vista de lógica y contexto cuando tuve que pelearme con el IDE de Arduino. Claro, ahora es muy facil poder decirme, hey! usa Visual Studio Code + PlatformIO....no olvidar que estoy hablando del 2018 :)

Y, sobre todo, muy real, aunque no lo parezca.

Jetson Nano.. WTF!

-"IA corriendo directamente en el dispositivo. Sin cloud, sin excusas"-

Volver a lo físico (pero ahora con IA)

Trabajar con Jetson Nano fue, en cierto punto, volver a ese lugar, pero con un salto bastante grande. Ya no es solo un dispositivo que junta datos y los manda al cloud para que alguien los procese después. Acá directamente tenés modelos de IA corriendo en el propio dispositivo, tomando decisiones en tiempo real y detectando patrones sin depender de conectividad. Y eso cambia completamente el enfoque: lo que antes resolvía con lógica programada y algunos thresholds, hoy podría abordarse con un modelo entrenado específicamente para detectar caídas de forma mucho más precisa.

Entender la IA más allá del Copilot y Claudio ;),"para los amigos"

Algo que también me ayudó mucho en este proceso fue dejar de ver la IA solo como usuario y empezar a entender qué pasa realmente por detrás. En ese camino me sirvió bastante todo el recorrido de e-learning que hice con Anthropic, porque me dio contexto para dimensionar mejor cómo funcionan estos sistemas en serio. Ahí trabajé desde cómo interactuar correctamente con modelos, hasta cómo integrarlos vía API en flujos reales y conectarlos con otros sistemas. Y eso fue un antes y un después. Porque muchas veces arrancamos usando copilots o herramientas ya armadas —que está perfecto, de hecho también fue mi punto de entrada—, pero cuando empezás a profundizar un poco más, dejás de simplemente usar IA y empezás a diseñar soluciones con IA.

Azure no se fué, sigue estando…

Esto no reemplaza nada de lo que ya venía haciendo con Azure, al contrario, lo complementa bastante bien. Hoy lo veo mucho más claro: el cloud sigue siendo clave para entrenar modelos, gobernar y escalar, mientras que los dispositivos —como Jetson o incluso una Raspberry— se encargan de ejecutar y tomar decisiones en tiempo real. En su momento, cuando trabajaba con Raspberry y Azure IoT Hub (sí, ese viejo conocido que ya todos sabemos que actualmente es parte del recuerdo 😅), el enfoque era bastante claro: enviar telemetría, procesarla en el cloud y desde ahí disparar acciones. Pero ahora el paradigma cambia un poco: primero procesás y tomás decisiones directamente en el dispositivo, y después le mandás al cloud solo lo que realmente aporta valor.

La parte que nadie te cuenta (pero es la mejor)

También hay algo que me parece importante decir, que claramente con los tiempos que corren, sumarle la palabra IA a cualquier cosa, suena cool (öjo! a mi tambien me gusta hacerlo, jejejej) Así y todo aquí realmente hay bastante de:

  • Pelear con una microSD

  • Flashear imágenes ( al momento de este blog, usé la version 2.4.0.13236 del NVIDIA_SDK_Manager")

  • Probar cables que no funcionan

  • No necesariamente pelear tanto entra pines analogicos y digitales, peroooo...

  • Entender por qué algo no levanta

Y sinceramente… está buenísimo. Mi mujer se enfoca con la Kindle, porque yo no con mi hardware???

Porque me obliga a salir del confort del portal de Azure y volver a entender cómo funcionan las cosas por debajo frustrandome una y otra vez.... demostrandome, que hay algo más alla.

Nunca me olvidare mís primeras líneas en C++, pido disculpas a los desarrolladores de verdad, sabrán entenderme! A los DEVs de verdad, les dejo mas info aqui (https://github.com/NVIDIA-AI-IOT/jetbot) y la matriz de compatibilidad de Jetpack.

Lo que estoy buscando ahora

Hace tiempo que vengo explorando este camino, primero con IoT, después con cloud, y ahora con IA corriendo directamente en dispositivos.

Este curso es parte de ese recorrido, y mi idea es llevarlo un poco más allá:

-Certifiqué (el mismo día que saque este blog :) ), profundizar y empezar a aplicarlo en escenarios reales de manera "doméstica". Donde lo de doméstico ni yo me lo creo realmente, pero me gusta!

Especialmente donde el contexto es físico, el tiempo real y la autonomía del dispositivo hacen la diferencia y muy lejos de unas "Managed rule" en un WAF por ejemplo.

void setup() {
pinMode(13, OUTPUT); // Configura el pin 13 como salida
}

void loop() {
digitalWrite(13, HIGH); // Enciende el LED
delay(1000); // Espera 1 segundo
digitalWrite(13, LOW); // Apaga el LED
delay(1000); // Espera 1 segundo
}

Cierre a modo conclusión...

Si algo me dejó toda esta experiencia es una sensación bastante clara: volver a trabajar con dispositivos, después de tanto tiempo en cloud, no es retroceder, es sumar una pieza que faltaba. Porque cuando las cosas pasan en el mundo físico, toman otro sentido, se vuelven más reales. No es lo mismo ver datos en una pantalla que tener un dispositivo funcionando, reaccionando y tomando decisiones ahí mismo. Y eso te cambia la perspectiva. Al final, la IA no vive solo en el cloud… también vive donde realmente pasan las cosas.

Gracias! gracias de verdad por pasarse, un gusto como siempre compartir!

Woww! No se tomen en serio que esta es la parte #1, esto de no escribir nada hace un tiempo largo, que emoción, espero la pueda disimular :) !