Skip to content

How to create an EV3Dev Image with ROS?

Bruno Lima edited this page Nov 9, 2018 · 2 revisions

Prerequisites

  $ docker pull ev3dev-jessie/ev3-base

You may download another image than ev3dev-jessie / ev3-base but please be aware if the given image has everything such as: boot partition, linux-headers, kernel etc. E.g: The ev3dev/debian-jessie-cross image will not boot after put in a SDcard.

  • Next, run a container with the downloaded image.

  • Install ROS and its dependencies

  • Install Python3

  • Install ev3dev python libraries:

      $ sudo apt-get update
      $ sudo apt-get install python3-ev3dev2
  • Run installation of rospkg for python3

Creating EV3Dev's image with ROS_Common:

  • Firstly, open another terminal. (If you exit docker terminal changes will not been commited)
  • Commit the running container to a new EV3's image with ROS_common installed
  • Generate a .tar and a .img of the new image created from the previous command through Brickstrap. You can find it here.
    • How to generate .tar:
      $ sudo brickstrap/src/brickstrap.sh create-tar NAME_OF_COMMITED_NEW_IMG FILE_GENERATE_NAME.tar
    • How to generate .img
      $ sudo brickstrap/src/brickstrap.sh create-image FILE_GENERATE_NAME.tar FINAL_FILE.img
  • And finally burn the .img to a SDcard

Example of mounting a syncronized folder from EV3 brick to your PC

After pairing via Bluetooth, use the following command:

sudo sshfs -o  allow_other [email protected]:/FOLDER/PATH/INSIDE/LEGO/ /FOLDER/PATH/INSIDE/HOST

Optional, Debug server gdb from pc(ros_master node) to EV3

  • need to add the steps
  • cgdb can be a option to a more human interface
  • clion can run gdb debug server for a more human interface than cgdb