.. _brash_tutorial_simple_robot_app_end_to_end: Building an end-to-end application to command an actuator ########################################################## In this tutorial, we'll show how to use the BRASH tools to create an end-to-end application that will allow you to control an actuator on the flight side, sending commands and receiving telemetry from the ground side using ROS2. The actuator will also be using ROS2 on the flight side, although this is not necessary. The figure below shows the setup of our system. .. figure:: _static/simple_robot_app_end_to_end_cut.png :width: 800px :alt: Simple robot app end-to-end :align: center As it can be seen, our system will consists on 2 machines: Ground and Flight. * **Ground:** Machine from which a user will send commands and receive telemetry data through ROS2 messages. * **Flight:** Machine that runs cFS and also ROS2 code that controls an actuator and sends back its state. The actuator is connected to this machine. We'll explain how to set things up in the next 3 tutorials: .. toctree:: :maxdepth: 1 Build a cFS app to send commands and receive simulated telemetry data Add a ROS2 node to control an actuator and make it talk with the cFS app Distribute our nodes in the ground and flight machines The first 2 tutorials will show how to run things on a single machine (ground) for easiness. The last tutorial will show you how to run things when you use a ground and a flight machine.