Saltar al contenido principal

Descripción general de plataformas

Raspberry Pi

Objetivo​

Ejecutar un Gateway de OpenClaw persistente y siempre activo en una Raspberry Pi por un costo único de ~$35-80 (sin tarifas mensuales). Perfecto para:

  • Asistente de IA personal 24/7
  • Centro de automatización del hogar
  • Bot de Telegram/WhatsApp de bajo consumo, siempre disponible

Requisitos de Hardware​

Modelo de PiRAM¿Funciona?Notas
Pi 54GB/8GB✅ MejorEl más rápido, recomendado
Pi 44GB✅ BuenoPunto óptimo para la mayoría de usuarios
Pi 42GB✅ AceptableFunciona, añadir swap
Pi 41GB⚠️ AjustadoPosible con swap, configuración mínima
Pi 3B+1GB⚠️ LentoFunciona pero es lento
Pi Zero 2 W512MB❌No recomendado

Especificaciones mínimas: 1GB de RAM, 1 núcleo, 500MB de disco
Recomendado: 2GB+ de RAM, SO de 64 bits, tarjeta SD de 16GB+ (o SSD USB)

Lo que necesitarás​

  • Raspberry Pi 4 o 5 (2GB+ recomendado)
  • Tarjeta MicroSD (16GB+) o SSD USB (mejor rendimiento)
  • Fuente de alimentación (se recomienda la PSU oficial de Pi)
  • Conexión de red (Ethernet o WiFi)
  • ~30 minutos

1) Grabar el Sistema Operativo​

Usa Raspberry Pi OS Lite (64-bit) — no se necesita escritorio para un servidor sin cabeza (headless).

  1. Descarga Raspberry Pi Imager
  2. Elige el SO: Raspberry Pi OS Lite (64-bit)
  3. Haz clic en el icono de engranaje (⚙️) para preconfigurar:
    • Establece el nombre de host: gateway-host
    • Habilita SSH
    • Establece nombre de usuario/contraseña
    • Configura WiFi (si no usas Ethernet)
  4. Graba en tu tarjeta SD / unidad USB
  5. Insértala y arranca la Pi

2) Conectar vía SSH​

ssh user@gateway-host
# o usa la dirección IP
ssh user@192.168.x.x

3) Configuración del Sistema​

# Actualizar el sistema
sudo apt update && sudo apt upgrade -y

# Instalar paquetes esenciales
sudo apt install -y git curl build-essential

# Establecer zona horaria (importante para cron/recordatorios)
sudo timedatectl set-timezone America/Chicago # Cámbialo a tu zona horaria

4) Instalar Node.js 22 (ARM64)​

# Instalar Node.js vía NodeSource
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install -y nodejs

# Verificar
node --version # Debería mostrar v22.x.x
npm --version

5) Añadir Swap (Importante para 2GB o menos)​

El swap evita fallos por falta de memoria:

# Crear archivo de swap de 2GB
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

# Hacerlo permanente
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

# Optimizar para poca RAM (reducir swappiness)
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

6) Instalar OpenClaw​

Opción A: Instalación Estándar (Recomendada)​

curl -fsSL https://openclaw.ai/install.sh | bash

Opción B: Instalación Hackeable (Para experimentar)​

git clone https://github.com/openclaw/openclaw.git
cd openclaw
npm install
npm run build
npm link

La instalación hackeable te da acceso directo a los registros y al código — útil para depurar problemas específicos de ARM.

7) Ejecutar el Asistente de Configuración (Onboarding)​

openclaw onboard --install-daemon

Sigue el asistente:

  1. Modo del Gateway: Local
  2. Autenticación: Se recomiendan claves API (OAuth puede ser problemático en una Pi sin cabeza)
  3. Canales: Telegram es el más fácil para empezar
  4. Daemon: Sí (systemd)

8) Verificar la Instalación​

# Comprobar estado
openclaw status

# Comprobar servicio
sudo systemctl status openclaw

# Ver registros
journalctl -u openclaw -f

9) Acceder al Panel de Control​

Dado que la Pi no tiene interfaz gráfica, usa un túnel SSH:

# Desde tu portátil/escritorio
ssh -L 18789:localhost:18789 user@gateway-host

# Luego abre en el navegador
open http://localhost:18789

O usa Tailscale para acceso siempre activo:

# En la Pi
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up

# Actualizar configuración
openclaw config set gateway.bind tailnet
sudo systemctl restart openclaw

Optimizaciones de Rendimiento​

Usar un SSD USB (Mejora Enorme)​

Las tarjetas SD son lentas y se desgastan. Un SSD USB mejora drásticamente el rendimiento:

# Comprobar si arranca desde USB
lsblk

Consulta la guía de arranque USB de Pi para la configuración.

Acelerar el inicio de la CLI (caché de compilación de módulos)​

En hosts Pi de menor potencia, habilita la caché de compilación de módulos de Node para que las ejecuciones repetidas de la CLI sean más rápidas:

grep -q 'NODE_COMPILE_CACHE=/var/tmp/openclaw-compile-cache' ~/.bashrc || cat >> ~/.bashrc <<'EOF' # pragma: allowlist secret
export NODE_COMPILE_CACHE=/var/tmp/openclaw-compile-cache
mkdir -p /var/tmp/openclaw-compile-cache
export OPENCLAW_NO_RESPAWN=1
EOF
source ~/.bashrc

Notas:

  • NODE_COMPILE_CACHE acelera las ejecuciones posteriores (status, health, --help).
  • /var/tmp sobrevive mejor a los reinicios que /tmp.
  • OPENCLAW_NO_RESPAWN=1 evita el costo adicional del autoreinicio de la CLI.
  • La primera ejecución calienta la caché; las ejecuciones posteriores se benefician más.

Ajuste de inicio de systemd (opcional)​

Si esta Pi ejecuta principalmente OpenClaw, añade un "drop-in" de servicio para reducir la inestabilidad en los reinicios y mantener estable el entorno de inicio:

sudo systemctl edit openclaw
[Service]
Environment=OPENCLAW_NO_RESPAWN=1
Environment=NODE_COMPILE_CACHE=/var/tmp/openclaw-compile-cache
Restart=always
RestartSec=2
TimeoutStartSec=90

Luego aplica:

sudo systemctl daemon-reload
sudo systemctl restart openclaw

Si es posible, mantén el estado/caché de OpenClaw en almacenamiento respaldado por SSD para evitar cuellos de botella de E/S aleatoria de la tarjeta SD durante los arranques en frío. Cómo las políticas Restart= ayudan a la recuperación automática: systemd puede automatizar la recuperación de servicios.

Reducir el Uso de Memoria​

# Deshabilitar asignación de memoria de GPU (sin cabeza)
echo 'gpu_mem=16' | sudo tee -a /boot/config.txt

# Deshabilitar Bluetooth si no se necesita
sudo systemctl disable bluetooth

Monitorear Recursos​

# Comprobar memoria
free -h

# Comprobar temperatura de la CPU
vcgencmd measure_temp

# Monitoreo en vivo
htop

Notas Específicas para ARM​

Compatibilidad Binaria​

La mayoría de las funciones de OpenClaw funcionan en ARM64, pero algunos binarios externos pueden necesitar compilaciones para ARM:

HerramientaEstado ARM64Notas
Node.js✅Funciona perfectamente
WhatsApp (Baileys)✅JS puro, sin problemas
Telegram✅JS puro, sin problemas
gog (CLI de Gmail)⚠️Verificar si hay versión para ARM
Chromium (navegador)✅sudo apt install chromium-browser

Si una skill falla, verifica si su binario tiene una compilación para ARM. Muchas herramientas de Go/Rust la tienen; otras no.

32 bits vs 64 bits​

Usa siempre un SO de 64 bits. Node.js y muchas herramientas modernas lo requieren. Verifica con:

uname -m
# Debería mostrar: aarch64 (64-bit) no armv7l (32-bit)

Configuración de Modelo Recomendada​

Dado que la Pi es solo el Gateway (los modelos se ejecutan en la nube), usa modelos basados en API:

{
"agents": {
"defaults": {
"model": {
"primary": "anthropic/claude-sonnet-4-20250514",
"fallbacks": ["openai/gpt-4o-mini"]
}
}
}
}

No intentes ejecutar LLMs locales en una Pi — incluso los modelos pequeños son demasiado lentos. Deja que Claude/GPT hagan el trabajo pesado.


Inicio Automático al Arrancar​

El asistente de configuración lo prepara, pero para verificar:

# Comprobar si el servicio está habilitado
sudo systemctl is-enabled openclaw

# Habilitar si no lo está
sudo systemctl enable openclaw

# Iniciar al arrancar
sudo systemctl start openclaw

Solución de Problemas​

Falta de Memoria (OOM)​

# Comprobar memoria
free -h

# Añadir más swap (ver Paso 5)
# O reducir servicios ejecutándose en la Pi

Rendimiento Lento​

  • Usa SSD USB en lugar de tarjeta SD
  • Deshabilita servicios no utilizados: sudo systemctl disable cups bluetooth avahi-daemon
  • Comprobar limitación de CPU: vcgencmd get_throttled (debería devolver 0x0)

El Servicio No Inicia​

# Comprobar registros
journalctl -u openclaw --no-pager -n 100

# Solución común: recompilar
cd ~/openclaw # si usas la instalación hackeable
npm run build
sudo systemctl restart openclaw

Problemas con Binarios ARM​

Si una skill falla con "exec format error":

  1. Verifica si el binario tiene una compilación para ARM64
  2. Intenta compilar desde el código fuente
  3. O usa un contenedor Docker con soporte ARM

Caídas de WiFi​

Para Pis sin cabeza en WiFi:

# Deshabilitar gestión de energía de WiFi
sudo iwconfig wlan0 power off

# Hacerlo permanente
echo 'wireless-power off' | sudo tee -a /etc/network/interfaces

Comparación de Costos​

ConfiguraciónCosto ÚnicoCosto MensualNotas
Pi 4 (2GB)~$45$0+ electricidad (~$5/año)
Pi 4 (4GB)~$55$0Recomendado
Pi 5 (4GB)~$60$0Mejor rendimiento
Pi 5 (8GB)~$80$0Excesivo pero a prueba de futuro
DigitalOcean$0$6/mes$72/año
Hetzner$0€3.79/mes~$50/año

Punto de equilibrio: Una Pi se paga sola en ~6-12 meses comparado con un VPS en la nube.


Ver También​

Oracle CloudConfiguración de Desarrollo en macOS