El ESP32-S3 de 8€ que convierte cualquier GPIO en un tool call de tu agente
zclaw cabe en 888KB y hace que tu ESP32-S3 pueda hablar con Claude vía Telegram. Cualquier sensor se convierte en herramienta de tu agente.
Alguien publicó en r/esp32 que había conseguido que su ESP32-S3 respondiera a mensajes de Telegram con lecturas de temperatura en tiempo real — no via HTTP polling sino como tool call real de un agente Claude. La librería se llama zclaw, ocupa menos de 1MB de flash y lleva la lógica de function calling directamente al microcontrolador.
Qué es exactamente
El ESP32-S3 es la evolución del clásico ESP32, con mejoras importantes para casos de uso de IA en el edge: 512KB de SRAM (el doble del ESP32 original), USB nativo sin chip externo, y soporte para aceleración de redes neuronales pequeñas con ESP-NN.
Lo importante para este caso de uso: el S3 tiene suficiente RAM para mantener una conexión MQTT persistente, parsear JSON de Claude API, y ejecutar callbacks de GPIO sin reinicios. El ESP32 original tiene problemas de memoria para todo esto simultáneamente.
Por qué nos interesa
La arquitectura de tool use de Claude permite que el agente decida cuándo necesita información de una herramienta externa. Si defines el GPIO de tu ESP32 como una herramienta, el agente puede pedir lecturas de temperatura, activar relés, leer sensores de CO2, o encender LEDs cuando lo necesite — sin que tú programes la lógica de cuándo hacerlo.
// zclaw — definir un tool de temperatura para Claude
Tool tempTool = {
.name = "get_temperature",
.description = "Lee la temperatura actual del sensor DHT22 en el salon",
.input_schema = R"({"type":"object","properties":{},"required":[]})",
.handler = []() -> String {
float t = dht.readTemperature();
return "{\"celsius\":" + String(t) + "}";
}
};
agent.registerTool(tempTool);
agent.connectTelegram(TELEGRAM_TOKEN, CHAT_ID);
agent.run(); // event loop — el agente responde a mensajes
Cómo empezar
Necesitas Arduino IDE o PlatformIO con el board package de ESP32-S3, y una cuenta de Telegram para obtener el bot token. La instalación de zclaw es vía Arduino Library Manager buscando “zclaw”.
# Con PlatformIO
pio lib install "zclaw"
La configuración mínima: token de Telegram, API key de Claude (guardada en NVS, no en el código), y la definición de tus tools.
Lo que no te van a contar
zclaw todavía no soporta streaming de respuestas — cada mensaje de Telegram espera la respuesta completa antes de enviarla, lo que puede ser lento para respuestas largas. Tampoco hay soporte para imágenes o archivos adjuntos. Y ten cuidado: si el ESP32-S3 pierde WiFi, el bot no avisa — tendrás que implementar tú el watchdog y las notificaciones de reconexión.
Veredicto
Para automatización doméstica con contexto de IA, el combo ESP32-S3 + zclaw es el punto de entrada más barato que existe ahora mismo. No es para proyectos de producción donde la fiabilidad es crítica — es para el homelab, el experimento, el “quiero que mi agente sepa cuándo está abierta la ventana del salón”.