mavlink3dmap
v1.0.15
Published
MAVLink 3D Map: single-package CLI to serve the web UI, run UDP→WebSocket bridge (8811), and optional Linux-only streaming (8081).
Downloads
1,077
Maintainers
Readme
mavlink3dmap
Single-package CLI that serves the MAVLink 3D Map web UI, runs the UDP→WebSocket bridge, runs the WebSocket↔WebSocket bridge, and (optionally, Linux-only) forwards video frames to a v4l2loopback device using ffmpeg.
It also provides a de command that starts the web UI together with the WebSocket↔WebSocket bridge, suitable for DroneEngage-style setups.
Install
- npx (no install):
npx mavlink3dmap up --port 8080 --udp-port 16450npx mavlink3dmap serve -p 8080npx mavlink3dmap de --port 8080 --port-a 8811 --port-b 8812
- or global:
npm i -g mavlink3dmap
Commands
npx mavlink3dmap serve [-p 8080]- Serves the built web UI (default port 8080)
npx mavlink3dmap udp2ws [--udp-port 16450]- Runs the UDP→WebSocket bridge (websocket at 8811)
npx mavlink3dmap ws2ws [--port-a 8811] [--port-b 8812]- Runs the WebSocket↔WebSocket bridge between two WS ports (defaults 8811 and 8812)
npx mavlink3dmap stream- Linux only. Starts streaming WS (8081) and pipes frames to v4l2loopback via ffmpeg
- First time, create the virtual device:
sudo bash backend/src/create_virtual_video_linux.sh
npx mavlink3dmap up [--port 8080] [--udp-port 16450] [--stream]- Starts web UI and UDP bridge together; with
--streamalso starts streaming on Linux.
- Starts web UI and UDP bridge together; with
npx mavlink3dmap de [--port 8080] [--port-a 8811] [--port-b 8812]- Starts the web UI and WebSocket↔WebSocket bridge together (no UDP bridge).
- Internally equivalent to running
serveandws2wswith the same port options.
Aliases (after global install): you can use mav3d ... instead of npx mavlink3dmap ....
Ports
- Web server: 8080
- WebSocket bridge (udp2ws): 8811
- WebSocket bridge (ws2ws / de): 8811 (A) and 8812 (B) by default
- Streaming WS: 8081 (Linux only)
Environment
- Node.js 18+
- For streaming on Linux:
ffmpegandv4l2loopback
License
MIT
