Berkeley Humanoid VR
Quest controllers drive physical humanoid arms through inverse kinematics and calibrated CAN commands.
Result & current limits
Physical arm teleoperation is visible in the supplied October 1 montage. The September 24 report marks all ten arm joints OK; one wrist reaches 90% of ±10° step commands in 0.23–0.25 s. This demonstrates simulation-to-hardware integration, not learned locomotion-policy transfer or a general manipulation success rate.
Problem
Quest controllers need a reliable path from tracked poses to calibrated robot joints. My Berkeley Humanoid Lite build also needed motion gating and an interface matched to its arm wiring and torque limits.
Solution
Connected Quest WebXR to Pink/Pinocchio inverse kinematics and SocketCAN arm drivers through a Python bridge. Added per-joint gravity feedforward, held-grip motion gating, and calibration tools. The same interface supports an offline arm model and physical hardware; camera, lidar, IMU, and relative-depth overlays give the operator feedback.
What I built
Built my physical Berkeley Humanoid Lite and calibrated its ten arm joints, then implemented the Quest interface, bridge, arm supervisor, tuning, diagnostics, and sensor panels. The robot design and underlying low-level platform are Berkeley's open-source work.
Technologies
More demos, engineering decisions, and evaluation notes
One interface, two backends
The offline arm model includes joint PD control, gravity, friction, torque limits, and end stops. Hardware uses the as-built CAN map and per-joint calibration. This makes rehearsal and software checks possible before commanding the arms. Simulation measurements are separate from the physical step-test report.
Feedback for the operator
The headset shows stereo camera views, lidar and IMU status, and per-eye relative-depth and RAFT flow overlays. Relative depth is rescaled per image. CPU vision updates slowly and stays outside the arm-control loop. Grip gating and damping are software controls; they do not establish physical emergency-stop performance.