Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
0df9fe7
Many changes to remove encompassing btree
andrewjong Apr 9, 2026
0caa6c9
Fix build errors
andrewjong Apr 9, 2026
0a90609
Remove old behavior tree example
andrewjong Apr 9, 2026
4a0fca3
Fix landing task so that it subscribes to mavros to listen to if land…
andrewjong Apr 9, 2026
5a79e35
Add subfolders for rviz, rqt, foxglove
andrewjong Apr 9, 2026
9f01954
Add rviz plugins
andrewjong Apr 9, 2026
a47af4e
Fix jazzy compatibility
andrewjong Apr 9, 2026
f513da8
Add task panel plugin for rviz
andrewjong Apr 9, 2026
ea81bea
Add docs to tasks panel, ensure only one task execute at a time
andrewjong Apr 10, 2026
4d76613
Try add icons but they're rendering as blocks, idk why
andrewjong Apr 10, 2026
9e05854
Ff
andrewjong Apr 10, 2026
c2590fa
Update rviz
andrewjong Apr 10, 2026
b038fb1
Update rviz
andrewjong Apr 10, 2026
9999eca
Update tasks panel to use navigate tool
andrewjong Apr 13, 2026
ec298ab
Fix waypoints panel to be more intuitive
andrewjong Apr 13, 2026
20f3636
Switch isaac default to standalone script mode
andrewjong Apr 13, 2026
bbc5926
Change default takeoff height to 10.0
andrewjong Apr 13, 2026
be6c668
Update readmes
andrewjong Apr 13, 2026
df9f464
Update picture
andrewjong Apr 13, 2026
76a1a22
Add simple logic to ensure drone must be airborne before other tasks
andrewjong Apr 14, 2026
aa04043
Fix disarm on land and set is_airborne false
andrewjong Apr 14, 2026
2c878f0
Bump version to 0.18.0-alpha.4
andrewjong Apr 14, 2026
854423f
Remove rqt
andrewjong Apr 14, 2026
e0fc025
Add media
andrewjong Apr 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .env
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
PROJECT_NAME="airstack"
# If you've run ./airstack.sh setup, then this will auto-generate from the git commit hash every time a change is made
# to a Dockerfile or docker-compose.yaml file. Otherwise this can also be set explicitly to make a release version.
VERSION="0.18.0-alpha.3"
VERSION="0.18.0-alpha.4"
# Choose "dev" or "prebuilt". "dev" is for mounted code that must be built live. "prebuilt" is for built ros_ws baked into the image
DOCKER_IMAGE_BUILD_MODE="dev"
# Where to push and pull images from. Can replace with your docker hub username if using docker hub.
Expand All @@ -30,7 +30,7 @@ RECORD_BAGS="false" # "true" or "false"
# ============== ISAAC SIM =====================
ISAAC_SIM_GUI="/isaac-sim/AirStack/simulation/isaac-sim/assets/scenes/simple_pegasus.scene.usd"
# Set to "true" to launch Isaac Sim using a standalone Python script instead of USD file
ISAAC_SIM_USE_STANDALONE="false" # "true" or "false"
ISAAC_SIM_USE_STANDALONE="true" # "true" or "false"
# Script name (must be in /AirStack/simulation/isaac-sim/launch_scripts/)
ISAAC_SIM_SCRIPT_NAME="example_one_px4_pegasus_launch_script.py"
PLAY_SIM_ON_START="false"
Expand Down
5 changes: 4 additions & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,12 @@
path = robot/ros_ws/src/perception/macvo_ros2/macvo_ros2/macvo
url = https://github.com/MAC-VO/MAC-VO.git
[submodule "robot/ros_ws/src/rviz_behavior_tree_panel/xdot_cpp"]
path = common/ros_packages/gui/rviz_behavior_tree_panel/xdot_cpp
path = common/ros_packages/gui/rviz/rviz_behavior_tree_panel/xdot_cpp
url = https://github.com/castacks/xdot_cpp.git
[submodule "simulation/isaac-sim/extensions/PegasusSimulator"]
path = simulation/isaac-sim/extensions/PegasusSimulator
url = https://github.com/castacks/PegasusSimulator-AirStack-Integration.git

[submodule "common/ros_packages/gui/rviz/rviz_polygon_selection_tool"]
path = common/ros_packages/gui/rviz/rviz_polygon_selection_tool
url = https://github.com/swri-robotics/rviz_polygon_selection_tool.git
18 changes: 0 additions & 18 deletions common/ros_packages/desktop_bringup/launch/gcs.launch.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,24 +12,6 @@
<?ignore
<node pkg="rviz2" exec="rviz2" args="-d $(find-pkg-share desktop_bringup)/rviz/gcs.rviz --ros-args --log-level INFO" output="screen" respawn="true" respawn_delay="1" />
?>


<node pkg="rqt_gui" exec="rqt_gui"
args="--perspective-file $(find-pkg-share rqt_gcs)/config/gcs.perspective --ros-args --log-level INFO"
output="screen" respawn="true" respawn_delay="1" />

<?ignore
<executable cmd="bash -c 'DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY foxglove-studio --no-sandbox'" output="screen"/>

<node pkg="foxglove_bridge" exec="foxglove_bridge" output="screen" respawn="true" respawn_delay="1">
<param name="port" value="8765" />
<param name="use_sim_time" value="$(var sim)" />
</node>
?>




<!-- ===================== -->

</launch>
7 changes: 0 additions & 7 deletions common/ros_packages/desktop_bringup/launch/robot.launch.xml
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,6 @@
<node pkg="rviz2" exec="rviz2"
args="-d $(find-pkg-share desktop_bringup)/rviz/robot.rviz --ros-args --log-level INFO"
output="screen" respawn="true" respawn_delay="1" />

<push-ros-namespace namespace="behavior" />
<node pkg="rqt_gui" exec="rqt_gui"
args="--perspective-file $(find-pkg-share desktop_bringup)/config/core.perspective">
<remap from="fixed_trajectory_command"
to="/$(env ROBOT_NAME)/fixed_trajectory_generator/fixed_trajectory_command" />
</node>
</group>


Expand Down
114 changes: 67 additions & 47 deletions common/ros_packages/desktop_bringup/rviz/robot.rviz
Original file line number Diff line number Diff line change
@@ -1,27 +1,24 @@
Panels:
- Class: rviz_common/Displays
Help Height: 70
Help Height: 0
Name: Displays
Property Tree Widget:
Expanded:
- /Global Options1
- /TF1/Frames1
- /Sensors1
- /Perception1/StereoImageProc Disparity1
- /Local1
- /Local1/DROAN1
- /Local1/DROAN1/Trimmed Global Plan for DROAN1/Topic1
- /Local1/DROAN1/Droan GPU1
- /Local1/DROAN1/Droan GPU1/Traj Debug1/Namespaces1
- /Global1
- /Local1/DROAN1/Global Plan Vis1
- /Global1/Global Plan1
Splitter Ratio: 0.3440559506416321
Tree Height: 480
Splitter Ratio: 0.5792563557624817
Tree Height: 693
- Class: rviz_common/Selection
Name: Selection
- Class: rviz_common/Tool Properties
Expanded:
- /2D Goal Pose1
- /Publish Point1
Expanded: ~
Name: Tool Properties
Splitter Ratio: 0.5886790156364441
- Class: rviz_common/Views
Expand All @@ -33,11 +30,23 @@ Panels:
Experimental: false
Name: Time
SyncMode: 0
SyncSource: StereoImageProc Disparity
SyncSource: Foreground Background Cloud
- Class: rviz_behavior_tree_panel::BehaviorTreePanel
Name: BehaviorTreePanel
topic: behavior/behavior_tree_graphviz
topic: /robot_1/behavior/behavior_tree_graphviz
zoom_factor: 0.1919851303100586
- Class: rviz_tasks_panel::TasksPanel
Name: TasksPanel
executor_0: /robot_1/tasks/takeoff
executor_1: /robot_1/tasks/land
executor_2: /robot_1/tasks/navigate
executor_3: /robot_1/tasks/exploration
executor_4: ""
executor_5: ""
executor_6: ""
executor_7: ""
executor_8: /robot_1/tasks/fixed_trajectory
robot: /robot_1
Visualization Manager:
Class: ""
Displays:
Expand Down Expand Up @@ -77,7 +86,7 @@ Visualization Manager:
base_link_frd:
Value: true
base_link_stabilized:
Value: false
Value: true
camera_left:
Value: true
camera_right:
Expand All @@ -87,11 +96,9 @@ Visualization Manager:
lidar:
Value: false
look_ahead_point:
Value: false
Value: true
look_ahead_point_stabilized:
Value: false
macvo_ned:
Value: false
Value: true
map:
Value: true
map_ned:
Expand All @@ -109,9 +116,9 @@ Visualization Manager:
rotor3:
Value: true
tracking_point:
Value: false
Value: true
tracking_point_stabilized:
Value: false
Value: true
world:
Value: false
Marker Scale: 0.30000001192092896
Expand All @@ -129,8 +136,7 @@ Visualization Manager:
{}
base_link_ZED_X:
camera_left:
macvo_ned:
{}
{}
camera_right:
{}
imu:
Expand Down Expand Up @@ -476,7 +482,8 @@ Visualization Manager:
Enabled: true
Name: Trimmed Global Plan for DROAN
Namespaces:
{}
global_plan: true
global_plan_extra_text: true
Topic:
Depth: 5
Durability Policy: Volatile
Expand Down Expand Up @@ -641,7 +648,7 @@ Visualization Manager:
Reliability Policy: Reliable
Value: droan/graph_vis
Value: true
Enabled: true
Enabled: false
Name: Droan GPU
- Class: rviz_default_plugins/MarkerArray
Enabled: true
Expand All @@ -659,7 +666,8 @@ Visualization Manager:
Enabled: true
Name: Global Plan Vis
Namespaces:
{}
global_plan: true
global_plan_extra_text: true
Topic:
Depth: 5
Durability Policy: Volatile
Expand All @@ -671,7 +679,7 @@ Visualization Manager:
Enabled: true
Name: Rewind Info
Namespaces:
{}
rewind_info: true
Topic:
Depth: 5
Durability Policy: Volatile
Expand Down Expand Up @@ -710,6 +718,15 @@ Visualization Manager:
Value: false
Enabled: true
Name: Trajectory Controller
- Class: rviz_default_plugins/InteractiveMarkers
Enable Transparency: true
Enabled: true
Interactive Markers Namespace: /robot_1/waypoint_plugin
Name: Waypoints InteractiveMarkers
Show Axes: true
Show Descriptions: true
Show Visual Aids: false
Value: true
Enabled: true
Name: Local
- Class: rviz_common/Group
Expand Down Expand Up @@ -757,20 +774,6 @@ Visualization Manager:
Value: true
Enabled: true
Name: Global
- Class: rviz_default_plugins/Image
Enabled: true
Max Value: 1
Median window: 5
Min Value: 0
Name: Image
Normalize Range: true
Topic:
Depth: 5
Durability Policy: Volatile
History Policy: Keep Last
Reliability Policy: Reliable
Value: sensors/front_stereo/left/image_rect
Value: true
Enabled: true
Global Options:
Background Color: 48; 48; 48
Expand Down Expand Up @@ -810,32 +813,49 @@ Visualization Manager:
History Policy: Keep Last
Reliability Policy: Reliable
Value: /clicked_point
- Class: rviz_polygon_selection_tool/PolygonSelectionTool
Close loop: true
Lasso mode: true
Line Color: 255; 0; 0
Patch size: 15
Point Color: 255; 0; 0
Point Generation Gap: 0.0020000000949949026
Point Size: 50
Render as Overlay: false
Service name: get_selection
Show Text: true
Text Size: 0.014999999664723873
- Class: waypoint_rviz2_plugin/WaypointTool
WaypointTool:
default_height: 10
frame_id: map
topic: waypoints
Transformation:
Current:
Class: rviz_default_plugins/TF
Value: true
Views:
Current:
Class: rviz_default_plugins/Orbit
Distance: 26.301408767700195
Distance: 37.564666748046875
Enable Stereo Rendering:
Stereo Eye Separation: 0.05999999865889549
Stereo Focal Distance: 1
Swap Stereo Eyes: false
Value: false
Focal Point:
X: 6.924289703369141
Y: -7.847400188446045
Z: -4.3323540687561035
X: 25.773038864135742
Y: -5.22532320022583
Z: -18.542400360107422
Focal Shape Fixed Size: false
Focal Shape Size: 0.05000000074505806
Invert Z Axis: false
Name: Current View
Near Clip Distance: 0.009999999776482582
Pitch: 0.5103968977928162
Pitch: 0.6403977274894714
Target Frame: base_link
Value: Orbit (rviz)
Yaw: 2.279876232147217
Yaw: 2.878566026687622
Saved: ~
Window Geometry:
BehaviorTreePanel:
Expand All @@ -849,13 +869,13 @@ Window Geometry:
Height: 1376
Hide Left Dock: false
Hide Right Dock: false
Image:
collapsed: false
MACVO Disparity:
collapsed: false
QMainWindow State: 000000ff00000000fd00000004000000000000028400000356fc020000000bfb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb0000000a005600690065007700730100000078000000ef000000a000fffffffb000000100044006900730070006c006100790073010000016d00000261000000c700fffffffb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261fb0000000a0049006d00610067006500000002eb000000c90000001600fffffffb00000028004d004100430056004f00200049006d00610067006500200046006500610074007500720065007300000002ba000000ca000000000000000000000001000001f600000356fc0200000009fb00000016004c006500660074002000430061006d006500720061010000003b000001880000000000000000fb00000014004c006500660074002000440065007000740068010000003b0000016a0000000000000000fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000001e00460072006f006e007400200052006900670068007400200052004700420100000078000002dc0000001600fffffffb0000002200460072006f006e0074002000520069006700680074002000440065007000740068010000035a000000740000001600fffffffc00000241000000750000000000fffffffa000000000100000002fb0000002200460072006f006e00740020005200690067006800740020004400650070007400680100000000ffffffff0000000000000000fb0000002200460072006f006e007400200052006900670068007400200044006500700074006801000007c4000001f60000000000000000fb0000002200460072006f006e0074002000520069006700680074002000440065007000740068010000014a000001cc0000000000000000fb0000001e004d004100430056004f0020004400690073007000610072006900740079000000028d000001410000001600fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b2000000000000000000000002000009ba00000037fc0100000002fb0000000800540069006d00650100000000000009ba0000025300fffffffb0000000a00560069006500770073030000004e00000080000002e10000019700000003000009ba00000171fc0100000002fb00000022004200650068006100760069006f0072005400720065006500500061006e0065006c0100000000000009ba000001fa00fffffffb0000000800540069006d00650100000000000004500000000000000000000005340000035600000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
QMainWindow State: 000000ff00000000fd000000040000000000000201000002f0fc020000000afb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb000000100044006900730070006c0061007900730100000078000002f0000000c700fffffffb0000001e0057006100790070006f0069006e007400200050006c007500670069006e0100000205000001630000000000000000fb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261fb0000000a0049006d00610067006501000002cb0000009d0000000000000000fb00000028004d004100430056004f00200049006d00610067006500200046006500610074007500720065007300000002ba000000ca00000000000000000000000100000109000002f0fc0200000007fb00000016004c006500660074002000430061006d006500720061010000003b000001880000000000000000fb00000014004c006500660074002000440065007000740068010000003b0000016a0000000000000000fb0000001e0054006f006f006c002000500072006f007000650072007400690065007301000000780000008b0000005c00fffffffb0000000a0056006900650077007301000001090000025f000000a000fffffffb0000001e0054006f006f006c002000500072006f0070006500720074006900650073010000028b000000dd0000000000000000fb0000001e004d004100430056004f0020004400690073007000610072006900740079000000028d000001410000001600fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b2000000000000000000000002000009ba00000037fc0100000002fb0000000800540069006d00650100000000000009ba0000025300fffffffb0000000a00560069006500770073030000004e00000080000002e10000019700000003000009ba000001d7fc0100000008fb00000014005400610073006b007300500061006e0065006c010000000000000489000002c500fffffffb0000001e00460072006f006e00740020005200690067006800740020005200470042010000048f000002a10000009400fffffffb0000002200460072006f006e00740020005200690067006800740020004400650070007400680100000736000002840000009e00fffffffb0000002200460072006f006e007400200052006900670068007400200044006500700074006801000006f6000002c40000000000000000fb0000002200460072006f006e00740020005200690067006800740020004400650070007400680100000714000002a60000000000000000fb0000002200460072006f006e007400200052006900670068007400200044006500700074006801000006e2000002d80000000000000000fb00000022004200650068006100760069006f0072005400720065006500500061006e0065006c00000006dc000002de0000023300fffffffb0000000800540069006d00650100000000000004500000000000000000000006a4000002f000000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
Selection:
collapsed: false
TasksPanel:
collapsed: false
Time:
collapsed: false
Tool Properties:
Expand Down
39 changes: 39 additions & 0 deletions common/ros_packages/gui/rviz/3d_waypoint_rviz2_plugin/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Build artifacts
build/
install/
log/

# IDE files
.vscode/
.idea/
*.swp
*.swo
*~

# Qt generated files
*.autosave
moc_*.cpp
moc_*.h
ui_*.h

# Bag files
*.bag
*.db3
*.db3-shm
*.db3-wal

# CMake
CMakeCache.txt
CMakeFiles/
cmake_install.cmake
Makefile

# Python
__pycache__/
*.pyc
*.pyo
*.pyd

# OS files
.DS_Store
Thumbs.db
Loading
Loading