Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Subsistema de hardware

El subsistema de hardware de ZeroClaw permite que el agente controle microcontroladores, SBC y periféricos directamente. Habilítalo con --features hardware.

¿Qué se admite?

El subsistema de hardware identifica las placas por USB VID/PID. Las placas en el registro canónico:

TableroArquitecturaUSB VID:PID
nucleo-f401reARM Cortex-M40x0483:0x374b
nucleo-f411reARM Cortex-M40x0483:0x3748
arduino-unoAVR ATmega328P0x2341:0x0043
arduino-unoArduino Uno Q / ATmega328P0x2341:0x0078
arduino-megaAVR ATmega25600x2341:0x0042
cp2102Puente USB-UART0x10c4:0xea60
cp2102nPuente USB-UART0x10c4:0xea70
esp32ESP32 (CH340)0x1a86:0x7523
esp32ESP32 (CH340)0x1a86:0x55d4

Transportes que habla el subsistema:

TransporteDescripción
serialJSON delimitado por saltos de línea sobre serial USB CDC
swdSonda de depuración SWD (probe-rs)
uf2Grabación de firmware por almacenamiento masivo UF2
nativeGPIO/I2C/SPI directo de Linux (rppal, sysfs)

Consulta diseño de periféricos para conocer la arquitectura y las guías de configuración para cada placa (Nucleo, Arduino Uno Q, Raspberry Pi, Android) para cablear cada una.

Habilitando

En tiempo de compilación:

sh

cargo build --release --features hardware

Las características de hardware son hardware (subsistema central), peripheral-rpi (GPIO nativo de Raspberry Pi) y probe (introspección SWD de probe-rs). Consulte la referencia de configuración para los campos de configuración por placa.

Herramientas de tiempo de ejecución

Con la característica hardware, el agente obtiene estas herramientas integradas:

  • gpio_read
  • gpio_write
  • pico_flash
  • device_read_code
  • device_write_code
  • device_exec

Todas las invocaciones de herramientas pasan por la misma política de seguridad que cualquier otra herramienta. Las herramientas de hardware solo acceden a las rutas de dispositivo enumeradas explícitamente en las entradas [[peripherals.boards]]:

Ejecutándose en una Raspberry Pi

El objetivo de hardware más común. Una configuración mínima:

sh

curl -fsSL https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | sh
# añade tu a los grupos de hardware (reinicia sesión después)
sudo usermod -aG gpio,spi,i2c $USER

# instalar como servicio de usuario (asegura que se herede la pertenencia al grupo de hardware)
zeroclaw service install

La unidad systemd predeterminada establece SupplementaryGroups=gpio spi i2c.

Seguridad

Las herramientas de hardware pueden inutilizar dispositivos. Cosas reales y costosas.

  • pico_flash escribe el firmware; una imagen defectuosa puede inutilizar la placa. La herramienta requiere la aprobación del operador en Supervised independientemente del nivel de autonomía; no hay forma de aprobarla automáticamente.
  • Las escrituras en GPIO que entran en conflicto con controladores externos (luchas de voltaje) pueden dañar los pines.

Para implementaciones en producción con canales no confiables expuestos, mantenga las herramientas de hardware fuera de los canales no CLI mediante la lista global autonomy.non_cli_excluded_tools (el esquema no tiene un campo tools_deny por canal). Las herramientas listadas ahí se omiten de las especificaciones de herramientas enviadas al modelo en todos los canales no CLI (Discord, Telegram, Bluesky, etc.). La CLI local sigue viéndolas.

Fichas técnicas

Mapas de pines y características eléctricas por placa: