Difference between revisions of "Software Setup Guide"

From Pengatom Robotics Wiki
Jump to: navigation, search
(Bluetooth & PS4 dependencies:)
(Bluetooth & PS4 dependencies:)
Line 59: Line 59:
 
  [info][bluetooth] Scanning for devices
 
  [info][bluetooth] Scanning for devices
 
  [info][controller 1] Battery: 75%
 
  [info][controller 1] Battery: 75%
 
To check the button and see if everything is okay jut install jstest-gtk
 
sudo apt-get install jstest-gtk
 
  
 
=== JStest gtk and joystick ===
 
=== JStest gtk and joystick ===

Revision as of 13:33, 29 June 2020

Misc

$ sudo apt-get update

User Access

Grant local user real-time access to the Arbotix Pro:

echo "ulimit -r 31" >> ~/.bashrc
sudo su
echo "<username> soft rtprio 31" >> /etc/security/limits.conf
echo "<username> hard rtprio 31" >> /etc/security/limits.conf
sudo usermod -a -G dialout <username>


ROS

Install ROS

Make sure to install dependencies with

sudo apt install python-rosdep python-rosinstall python-rosinstall-generator python-wstool build-essential

and initialize them. All this is described in 1.6

I recommend going through a couple of Tutorials, at least to verify installation and configure your environment

Tips:

Use following command to set ROS hostname when using single machine setup:

export ROS_HOSTNAME=localhost

Install ROS on Arbotix-M

There is a great tutorial for this here!

Gazebo

Setup Gazebo with ROS

Joystick

Bluetooth & PS4 dependencies:

If not already done, install pip3.

Modified from ros-developer.com:


PS4 controllers work out of the box in Ubuntu with USB cable but I was looking for a way to get it work via Bluetooth as well. After installing a couple of packages I found "ds4drv". To install it:

sudo pip3 install ds4drv

Then you have to either add the user to the list of root user or simply run it with sudo:

sudo ds4drv

Now hold ps button and share button on the controller and you should see the following in your terminal:

PS4_Controller_Pair_Mode.jpg

[info][controller 1] Created devices /dev/input/js0 (joystick) /dev/input/event16 (evdev) 
[info][bluetooth] Scanning for devices
[info][bluetooth] Found device 40:1B:5F:F0:18:6B
[info][controller 1] Connected to Bluetooth Controller (40:1B:5F:F0:18:6B)
[info][bluetooth] Scanning for devices
[info][controller 1] Battery: 75%

JStest gtk and joystick

These are two tools included in the Ubuntu repositories. The first of the two, jstest-gtk, is a graphical tool, and joystick is a set of commandline utilities.
You can install them using:

sudo apt-get install jstest-gtk 

or

sudo apt-get install joystick

Jstest-gtk is a front end to joystick's commandline tools.
Changes in mapping or calibration can be done with command:

sudo jscal-store /dev/input/jsX

Where 'X' is the joystick input

Simple PS4 Servo Move

git clone https://github.com/Pengatom/SimlePS4ServoMove.git
cd SimlePS4ServoMove/c++/build/linux64/
make
sudo make install 
cd ..
cd ..
cd example/protocol1.0/read_write/linux64/
./read_write

Move stuff up above this line if its needed



Core library & Project dependencies:

$ sudo apt-get install build-essential git libjpeg-dev gcc-multilib g++-multilib


Install HR-OS5 ROS package from Interbotix.:

Dependencies:

git clone https://github.com/Interbotix/HROS5-Framework ./src/hros5_misc/hros5_framework
cd src/hros5_misc/hros5_framework/Linux/build/
make

ROS packages:

sudo apt-get install ros-indigo-joy
sudo apt-get install python-rosinstall
sudo apt-get install ros-indigo-robot-localization
sudo apt-get install ros-indigo-rtabmap-ros
sudo apt-get install ros-indigo-rtabmap
sudo apt-get install ros-indigo-joint-trajectory-controller
sudo apt-get install ros-indigo-effort-controllers ros-indigo-joint-state-controller ros-indigo-joint-state-publisher ros-indigo-controller-manager ros-indigo-imu-sensor-controller ros-indigo-position-controllers 


$ sudo apt-get install

$ sudo apt-get install

$