sl-jetson 039355d5bb feat: full_stack.launch.py — one-command autonomous stack bringup
Adds saltybot_bringup/launch/full_stack.launch.py: a single launch file
that brings up the entire SaltyBot software stack in dependency order,
with mode selection (indoor / outdoor / follow).

Launch sequence (wall-clock delays):
  t= 0s  robot_description (URDF + TF)
  t= 0s  STM32 bidirectional serial bridge
  t= 2s  sensors (RPLIDAR A1M8 + RealSense D435i)
  t= 2s  cmd_vel safety bridge (deadman + ramp + AUTONOMOUS gate)
  t= 4s  UWB driver (MaUWB DW3000 anchors on USB)
  t= 4s  CSI cameras — 4x IMX219 (optional, enable_csi_cameras:=true)
  t= 6s  SLAM — RTAB-Map RGB-D+LIDAR (indoor only)
  t= 6s  Outdoor GPS nav (outdoor only)
  t= 6s  YOLOv8n person detection (TensorRT)
  t= 9s  Person follower (UWB primary + camera fusion)
  t=14s  Nav2 navigation stack (indoor only)
  t=17s  rosbridge WebSocket server (port 9090)

Modes:
  indoor  — SLAM + Nav2 + full sensor suite + follow + UWB (default)
  outdoor — GPS nav + sensors + follow + UWB (no SLAM)
  follow  — sensors + UWB + perception + follower only

Launch arguments:
  mode, use_sim_time, enable_csi_cameras, enable_uwb, enable_perception,
  enable_follower, enable_bridge, enable_rosbridge, follow_distance,
  max_linear_vel, uwb_port_a, uwb_port_b, stm32_port

Also updates saltybot_bringup/package.xml:
  - Adds exec_depend for all saltybot_* packages included by full_stack
  - Updates maintainer to sl-jetson

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-01 00:56:39 -05:00

40 lines
1.6 KiB
XML

<?xml version="1.0"?>
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>saltybot_bringup</name>
<version>0.1.0</version>
<description>SaltyBot launch files — full autonomous stack bringup (sensors, SLAM, Nav2, UWB, perception, follower)</description>
<maintainer email="sl-jetson@saltylab.local">sl-jetson</maintainer>
<license>MIT</license>
<exec_depend>rplidar_ros</exec_depend>
<exec_depend>realsense2_camera</exec_depend>
<exec_depend>realsense2_description</exec_depend>
<exec_depend>slam_toolbox</exec_depend>
<exec_depend>rtabmap_ros</exec_depend>
<exec_depend>nav2_bringup</exec_depend>
<exec_depend>robot_state_publisher</exec_depend>
<exec_depend>tf2_ros</exec_depend>
<exec_depend>rosbridge_server</exec_depend>
<exec_depend>image_transport</exec_depend>
<exec_depend>image_transport_plugins</exec_depend>
<!-- SaltyBot packages included by full_stack.launch.py -->
<exec_depend>saltybot_bridge</exec_depend>
<exec_depend>saltybot_cameras</exec_depend>
<exec_depend>saltybot_description</exec_depend>
<exec_depend>saltybot_follower</exec_depend>
<exec_depend>saltybot_outdoor</exec_depend>
<exec_depend>saltybot_perception</exec_depend>
<exec_depend>saltybot_uwb</exec_depend>
<buildtool_depend>ament_python</buildtool_depend>
<test_depend>ament_copyright</test_depend>
<test_depend>ament_flake8</test_depend>
<test_depend>ament_pep257</test_depend>
<export>
<build_type>ament_python</build_type>
</export>
</package>