preset RCAN 1.6 RRN-610516058522
Freenove_4WD_Smart_Car
Freenove 4WD Smart Car Kit — a popular STEM robot available in Arduino Uno and ESP32 variants. Four DC motors with differential drive, HC-SR04 ultrasonic obstacle avoidance, IR line-following sensors, and optional servo pan camera. Arduino variant controlled via serial JSON; ESP32 variant via WebSocket.
Scan to install
differentialanthropicrcan-1.6presets
Install with one command:
castor install opencastor.com/config/freenove_4wd Provider
anthropic
Physics
differential
RCAN Version
1.6
Source
presets
Config (freenove_4wd.rcan.yaml)
rcan_version: '1.6'
metadata:
robot_name: Freenove_4WD_Smart_Car
robot_uuid: 3a7c818f-ee8e-4ae3-90d0-4e121083df54
manufacturer: Freenove
model: 4WD Smart Car Kit
author: OpenCastor Default
license: Apache-2.0
tags:
- 4wd
- stem
- arduino
- esp32
- beginner
description: 'Freenove 4WD Smart Car Kit — a popular STEM robot available in Arduino
Uno and ESP32 variants. Four DC motors with differential drive, HC-SR04 ultrasonic
obstacle avoidance, IR line-following sensors, and optional servo pan camera.
Arduino variant controlled via serial JSON; ESP32 variant via WebSocket.
'
rrn: RRN-610516058522
rrn_uri: rrn://community/robot/opencastor/freenove-4wd-smart-car/freenove_4wd
agent:
provider: anthropic
model: claude-sonnet-4-5
vision_enabled: false
latency_budget_ms: 100
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: 4
chassis:
wheel_base_mm: 130
track_width_mm: 150
wheel_radius_mm: 30
drivers:
- id: motor_driver
protocol: arduino_serial_json
port: /dev/ttyUSB0
baud_rate: 115200
channels:
fl_pwm: 5
fl_dir: 4
fr_pwm: 6
fr_dir: 7
rl_pwm: 10
rl_dir: 9
rr_pwm: 11
rr_dir: 12
deadband_pwm: 30
max_pwm: 200
- id: ultrasonic_sensor
protocol: arduino_serial_json
port: /dev/ttyUSB0
baud_rate: 115200
sensor_type: hcsr04
trigger_gpio: 2
echo_gpio: 3
max_range_m: 4.0
- id: line_sensor
protocol: arduino_serial_json
port: /dev/ttyUSB0
baud_rate: 115200
sensor_type: ir_line
sensor_pins:
- A0
- A1
- A2
- id: servo_pan
protocol: arduino_serial_json
port: /dev/ttyUSB0
baud_rate: 115200
sensor_type: servo
gpio: 8
min_us: 500
max_us: 2500
connection:
type: serial
port: /dev/ttyUSB0
baud_rate: 115200
reconnect_interval_ms: 2000
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
safety:
obstacle_stop_cm: 15
estop_on_startup: false
max_linear_speed_mps: 0.5
local_safety_wins: true
emergency_stop_distance: 0.4
estop_bypass_rate_limit: true
watchdog:
timeout_s: 10
notes:
firmware: "Flash Arduino IDE sketch from Freenove tutorial code. Sketch must accept\
\ JSON commands on Serial:\n {\"cmd\":\"drive\",\"fl\":150,\"fr\":150,\"rl\"\
:150,\"rr\":150,\"ms\":500}\n {\"cmd\":\"stop\"}\n {\"cmd\":\"sensor\",\"id\"\
:\"hcsr04\"}\nESP32 variant: change motor_driver protocol to esp32_websocket and\
\ set host: \"192.168.4.1\" (AP mode) or your router-assigned IP.\n"
hardware:
mcu_option_1: Arduino Uno R3 (serial via USB)
mcu_option_2: ESP32-WROOM-32 (WiFi WebSocket)
motor_driver: L298N dual H-bridge
ultrasonic: HC-SR04
line_sensors: 3× IR reflective sensor (TCRT5000)
battery: 7.4V 2S LiPo or 6× AA
purchase: 'Kit available on Amazon (~$30–50). Includes all hardware, chassis, Freenove
tutorial code, and detailed PDF guide. Great first robot.
'
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
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