In order to manually control the Clearpath Husky and the actuators connected to the Arduino Microcontroller, a controller appeared to be the best option. While off the shelf controllers are widely available, we were hoping for a controller that did not require any extra dongles or peripheral as our laptop was running out of USB ports. The PS4 controller fit this role quite nicely. It has a good amount of buttons and also features a bluetooth connection which connects directly to the laptop without needing a extra connector.
Laptop retriving data from PS4 controller with ROS.
In order to extablish connection between the controller and ROS, the Joy package was used. Not only does this package setup the drivers required for communicated with the controller, but also provides a node which publishes the joysticks and buttons statuses. We merely had to subscribe to this node with in our own node to obtain all the data we need from the controller.