Navigation, Incident Guidance, and Emergency Localization & Control — a mission-control style interface for the Future Interfaces hackathon. It turns VSLAM (visual mapping) data and radio-style transcripts into a unified command center.
Think of it as air traffic control, but for firefighters on a floor plan: multiple video feeds, a growing 3D map from the helmet rig, and a radio panel that can drive what you see on the map.
| Path | Role |
|---|---|
frontend/ |
Next.js app: dispatcher dashboard, Three.js point-cloud view, WebSocket feeds, API routes |
ros2/ |
ROS 2 workspace: Odin driver, SLAM cloud accumulator, launch files |
features.md |
Product / UX spec (panels, semantic radio, stretch goals) |
- Dispatcher (
/dispatcher) — multi-unit viewports, central 3D map, blueprint search, radio / transcript UX - Firefighter (
/firefighter) — field-facing UI - WebSockets — live SLAM / camera data; see
frontend/docs/WEBSOCKET_ARCHITECTURE.mdandros2/src/slam_cloud_accumulator/WEBSOCKET_API.mdfor architecture details
odin_ros_driver— depth / point cloud pipeline for Odin hardware (package README)slam_cloud_accumulator— accumulates SLAM clouds for streaming to the web stack
- Node.js 20+ (matches frontend tooling)
- ROS 2 (Jazzy or your team's distro) for the
ros2/workspace - Optional: TLS certs under
frontend/certificates/for HTTPS dev (otherwise the dev server falls back to HTTP — seefrontend/server.js)
cd frontend
npm install
npm run dev # HTTPS if certs exist, else HTTP on :3000
# or: npm run dev:http # plain Next dev serverOpen http://localhost:3000 or https://localhost:3000 depending on your setup.
More detail: frontend/README.md.
From the ros2 workspace root (after installing ROS 2 and dependencies):
cd ros2
source /opt/ros/<distro>/setup.bash
colcon build
source install/setup.bash
# Launch files live under ros2/src/odin_ros_driver/launch_ROS2/Use the scripts in ros2/src/odin_ros_driver/script/ if your environment expects them.
The Odin driver subtree includes its own license; see ros2/src/odin_ros_driver/LICENSE.