Skip to main content
Version: Next

Usage Examples

Note: If you are using Docker to run the SDK, make sure to connect a new terminal to your container each time the instructions below tell you to "open a new terminal"

Example 1 Receive Data from LUCI:

Lets look at a general example of how you might use the LUCI ROS2 SDK to receive data from LUCI from a ROS node. This example spins up the connection to the chair and allows its sensors to be visualized in rviz2.

Step 1: Open a fresh terminal and source ros2

source /opt/ros/humble/setup.sh

Step 2: Spin up the luci_grpc_interface_node.

ros2 run luci_grpc_interface grpc_interface_node -a <chair-ip-address>

Step 3: Open a NEW terminal and source ros2

source /opt/ros/humble/setup.sh

Step 4: Run the sensor transform topic. This tells ROS the location of each sensor in the stream.

ros2 run luci_transforms quickie_500m_tf_node

Step 5: Open a THIRD terminal and source ros2

source /opt/ros/humble/setup.sh

Step 6: Run rviz2

rviz2

Step 7: Configure rviz2

  • Where it says 'Global Options' in Rviz, select 'base_camera' under 'Fixed Frame'.
  • Then at the bottom left of the screen click 'Add'.
    • Select the 'By Topic' Tab
    • Then select 'PointCloud2' under '/camera_points'

You should now see a point cloud of camera points in Rviz

In addition to this example, we also provide an Rviz configuration file that may be useful: Rviz Config

Example 2 Send Data to LUCI:

Step 1: Open a fresh terminal and source ros2

source /opt/ros/humble/setup.sh

Step 2: Spin up the luci_grpc_interface_node.

ros2 run luci_grpc_interface grpc_interface_node -a <chair-ip-address>

Step 3: Open a NEW terminal and source ros2.

source /opt/ros/humble/setup.sh

Step 4: Run the keyboard teleop node.

ros2 run luci_basic_teleop keyboard_control_node

With this node running, you can use the arrow keys on your keyboard to drive your wheelchair!