Other Useful HAL Surfaces
HAL only mounts the route modules a device declares in its
robots/<device>/ROBOT.md, plus a few that are always on (audio, emotion,
scene, system, bluetooth). Intern v2 Pro has no camera, no servos and
no display, so those routes are simply absent on it — they're listed here
because the same HAL runs on Lamp.
| Domain | Source file | Highlights | On Intern v2 Pro? |
|---|---|---|---|
| Emotion | hal/routes/emotion.py | POST /emotion ({"emotion": "…", "intensity": 0.7}), GET /emotion/presets, GET /emotion/status — coordinated servo + LED + display | Yes — LED only |
| Scene | hal/routes/scene.py | GET /scene (list presets), POST /scene ({"scene": "…"}), POST /scene/off — lighting scene presets | Yes |
| Face recognition | hal/routes/sensing.py | POST /face/enroll, GET /face/owners, POST /face/remove, POST /face/reset | Mounted, but there's no camera to feed it |
| Servo | hal/routes/servo.py | /servo/aim, /servo/track, /servo/play, /servo/move | No (Lamp) |
| Camera | hal/routes/camera.py | GET /camera/snapshot, GET /camera/stream, /camera/enable, /camera/disable | No (Lamp) |
| Display | hal/routes/display.py | /display/eyes, /display/info, /display/eyes-mode, GET /display/snapshot | No (Lamp) |