Quick Setup

How to quickly setup your robot after building

QUICK SETUP FOR SYSTEM VERSION 4.2 !!!

This section contains information about how to setup your MARRtino robot.

You need to install the Software (system version 4.2) before executing this step.

VERY IMPORTANT: The following operations must be done with robot wheels lifted from the ground (IT COULD MOVE!!!)

1. Configuration file

Connect to Raspberry ssh marrtino@10.3.1.1

Set values according to the configuration of your robot.

nano ~/system_config.yaml

system:

nginx: off | on

simulator:

stage: off | on

robot:

motorboard: off | arduino | ln298 | pka03 | marrtino2019

4wd: off | on

joystick: off | on

laser: off | hokuyo | rplidar

camera: off | usbcam | astra | xtion
camera_resolution: (640, 480) # (width, height)


functions:

navigation: off | on

vision: off | on

speech: off | on

mapping: off | on

social: off | on

Build and restart the docker containers

restart_docker.bash

2. Upload firmware

WARNING. Robot can move during these operations. Keep it lifted from ground.

Make sure the Arduino board is connected to the Raspberry and that robot node is not running.

Option 1. Using the config web interface - http://10.3.1.1//config/index.html

Connect to the robot, press button Firmware Flash - Wait 30 seconds ...
press button
Firmware Update Params - Wait 30 seconds ...

Option 2. Using a terminal

Connect to the Raspberry with ssh and type these commands

docker exec -it orazio bash

cd ~/src/marrtino_apps/config

./uploadfirmware.bash

./uploadfirmwareparams.bash <arduino | ln298 | pka03 | marrtino2019>

Check settings with web interface

Start Web config

Orazio Web interface

In the Drive panel, check the following tests:

tr.vel 0.1 -> forward slowly

tr.vel -0.1 -> backward slowly

rot.vel 0.2 -> right forward, left backward slowly

rot.vel -0.2 -> right backward, left forward slowly

Quit Web config

3. Reboot the Raspberry

Use the web interface or type

sudo reboot

Configure a local docker environment

To interact with MARRtino ROS nodes and programs from your local Linux host, you need to configure a local docker environment.

If you use MARRtino VM, you can skip the installation steps 1, 2, 3 below.

  1. Install docker and follow post-installation setup

  2. download marrtino_apps:
    git clone https://bitbucket.org/iocchi/marrtino_apps.git

  3. set environment variable in your ~/.bashrc file
    export MARRTINO_APPS_HOME=<folder where you cloned marrtino_apps>

  4. create a playground folder for development files

  5. set environment variable in your ~/.bashrc file
    export MARRTINO_PLAYGROUND=<playground folder>

  6. open a new terminal

  7. set robot IP (must be set on any terminal or added to ~/.bashrc)
    export ROBOT_IP=<IP of the robot running ROS>

  8. set local host IP (must be set on any terminal or added to ~/.bashrc)
    export ROS_IP=<local IP in the same network of the robot>

  9. run the docker container
    cd $MARRTINO_APPS_HOME/docker
    ./run_local.bash

  10. This docker container mounts the playground folder where you can store permanent files and is configured to interact with ROS and Python interfaces of MARRtino software

Advanced configuration

Advanced manual configuration (for expert users)