preset RCAN 1.6 RRN-894461094746

LEGO_Mindstorms_EV3

LEGO Mindstorms EV3 — extremely common in school surplus sales and donations. Uses the ev3dev Linux OS with Python driver. Large motors on output ports A/D (drive), medium motor on B (arm/gripper). Touch, color, and ultrasonic sensors on input ports 1-4.

Scan to install

differentialanthropicrcan-1.6presets

Install with one command:

castor install opencastor.com/config/lego_mindstorms_ev3
Provider
anthropic
Physics
differential
RCAN Version
1.6
Source
presets

Config (lego_mindstorms_ev3.rcan.yaml)

rcan_version: '1.6'
metadata:
  robot_name: LEGO_Mindstorms_EV3
  robot_uuid: 41d2f29e-6c70-4d56-b85f-c32472f0b842
  author: OpenCastor Default
  license: Apache-2.0
  tags:
  - mobile
  - educational
  - lego
  - mindstorms
  - ev3
  - stem
  - second-hand
  description: 'LEGO Mindstorms EV3 — extremely common in school surplus sales and
    donations. Uses the ev3dev Linux OS with Python driver. Large motors on output
    ports A/D (drive), medium motor on B (arm/gripper). Touch, color, and ultrasonic
    sensors on input ports 1-4.

    '
  rrn: RRN-894461094746
  rrn_uri: rrn://community/robot/opencastor/lego-mindstorms-ev3/lego_mindstorms_ev3
agent:
  provider: anthropic
  model: claude-sonnet-4-5
  vision_enabled: false
  latency_budget_ms: 500
  safety_stop: true
  offline_provider: ollama
  confidence_gates:
  - scope: control
    min_confidence: 0.75
    on_fail: block
  - scope: safety
    min_confidence: 0.9
    on_fail: block
physics:
  type: differential
  dof: 2
  chassis:
    wheel_base_mm: 130
    wheel_radius_mm: 28
drivers:
- id: left_motor
  protocol: ev3dev_tacho_motor
  port: outA
  motor_type: lego-ev3-l-motor
  polarity: normal
  max_speed_rpm: 170
- id: right_motor
  protocol: ev3dev_tacho_motor
  port: outD
  motor_type: lego-ev3-l-motor
  polarity: inversed
  max_speed_rpm: 170
- id: arm_motor
  protocol: ev3dev_tacho_motor
  port: outB
  motor_type: lego-ev3-m-motor
  polarity: normal
  max_speed_rpm: 260
- id: touch_sensor
  protocol: ev3dev_sensor
  port: in1
  sensor_type: lego-ev3-touch
  mode: TOUCH
- id: color_sensor
  protocol: ev3dev_sensor
  port: in2
  sensor_type: lego-ev3-color
  mode: COL-COLOR
- id: ultrasonic_sensor
  protocol: ev3dev_sensor
  port: in3
  sensor_type: lego-ev3-us
  mode: US-DIST-CM
- id: gyro_sensor
  protocol: ev3dev_sensor
  port: in4
  sensor_type: lego-ev3-gyro
  mode: GYRO-ANG
connection:
  type: ev3dev_ssh
  host: ev3dev.local
  user: robot
network:
  telemetry_stream: true
  sim_to_real_sync: false
  allow_remote_override: false
rcan_protocol:
  port: 8000
  capabilities:
  - status
  - nav
  - teleop
  - chat
  enable_mdns: false
  enable_jwt: false
notes:
  setup: '1. Flash ev3dev image to microSD: https://www.ev3dev.org/docs/getting-started/
    2. Boot EV3 with ev3dev SD card. 3. Connect via USB cable (RNDIS) or add a WiFi
    USB dongle. 4. SSH: ssh robot@ev3dev.local (default password: [REDACTED] 5. pip
    install python-ev3dev2 6. castor run --config config/presets/lego_mindstorms_ev3.rcan.yaml

    '
  second_hand_tips: 'Common at school surplus, Goodwill, and Facebook Marketplace
    for $30-80. Check that all motor/sensor ports click firmly. Test each motor with
    the built-in EV3 menu before flashing ev3dev. Replacement cables are cheap on
    eBay.

    '
tiered_brain:
  fast_provider: ollama
  fast_model: gemma3:1b
  slow_provider: anthropic
  slow_model: claude-sonnet-4-5
  planner_interval: 10
agent_roster:
- id: nav_specialist
  provider: ollama
  model: gemma3:4b
  scope: nav
- id: chat_specialist
  provider: anthropic
  model: claude-sonnet-4-5
  scope: chat
geofence:
  enabled: false
  boundary:
    type: none
reactive:
  min_obstacle_m: 0.3
  fallback_provider: ollama
cameras:
  main:
    type: http
    url: http://127.0.0.1:8765/snapshot
safety:
  local_safety_wins: true
  emergency_stop_distance: 0.4
  estop_bypass_rate_limit: true
  watchdog:
    timeout_s: 10
hardware_safety:
  physical_estop: false
  hardware_watchdog_mcu: false
p66:
  enabled: true
  loa_enforcement: true
  consent_required: true
  manifest:
    estop_qos_bypass: true
consent:
  required: true
  mode: explicit
  scope_threshold: control
security:
  replay_protection:
    enabled: true
    window_s: 30
  signing:
    enabled: false
    algorithm: Ed25519
loa:
  enforcement: true
  min_loa_for_control: 1
human_identity:
  loa_required: 1
transport:
  supported:
  - http
  - mqtt
  constrained_enabled: false
multimodal:
  enabled: true
  max_chunk_bytes: 1048576
offline:
  enabled: true
  fallback_provider: ollama
r2ram:
  scopes:
  - discover
  - status
  - chat
  - control
  - safety
federation:
  enabled: true
  consent_bridge: false
View on GitHub → ← Back to Explore