ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

1.I've just finished installing ROS Fuerte on a beaglebone running Ubuntu 12.04 LTS. I followed clausq's tutorial. Note that he was using Debian as an operating system not ubuntu because at that time ubuntu did not have PWM and otherperipheral support. This is no longer thecase and i believe they can be implemented as they would be in angstrom.

Some key issues with installing that differ from clausqr's blog are:

  • that you will need to implement a swap file. 250 - 300Mb should be enough

  • you will have issues linking collada_urdf.cpp. To solve this I installed libassim3 from its debian package as it is not realised for 12.04 you cant use apt-get directly. Download the .deb and unpack using the command:

    sudo dpkg -i libassimp3_3.0~dfsg-1_armhf.deb

    it will install this onto your system.

additionally I also had to use a patch suggested here. It will not work directly as I suspect that it was written for Groovy. I ended up cutting and pasting into my Collada_urdf.cpp file so that the include statements looked like this:

#include <assimp/IOSystem.h>

#  ifdef __arm__                 // fix for ARM build
#include <strings.h>
bool Assimp::IOSystem::ComparePaths(const char *p1, const char *p2) const
{
    return !::strcasecmp(p1, p2);
}
#  endif

#include <assimp/assimp.hpp>
#include <assimp/aiScene.h>
#include <assimp/aiPostProcess.h>
#include <assimp/IOStream.h>

and the make process completed. unfortunately it installed into my home directory and I'll need to see if it goes to /opt/ros/fuerte/stacks directory like my pc installation.

2.Yes because it seems that it does make a difference in the installation method. Additionally you will need to consider the Operating System on the Beaglebone as that will change things too.

3.Unless I misunderstand your question, I would think yes that way you have a direct link to your hardware using a node that can use the beaglebone IO and publish immediately.

4.for install see 1. above.

5.Of course from a simple computation perspective it is slower than a pc. However from an IO perspective, the ubuntu kernel can poll GPIO and read ADCs inherent in the beaglebone much faster than if it had to talk to a separate IO board such as an IOIO or Arduino or any other external controller via RS232 or ethernet. It could certainly be used as a cheap and fast embedded controller that speaks on ROS. Additionally it has the interfacing potential of a pc without extra baggage such as video driving hardware. Typically with a pc you would require a separate IO/DAQ board.

6.To install I needed the full RAM plus the swap file got to about 260Mb. The core intallation and the level 2 libraries have taken up about 550Mb on the SD Card.

1.I've just finished installing ROS Fuerte on a beaglebone running Ubuntu 12.04 LTS. I followed clausq's tutorial. Note that he was using Debian as an operating system not ubuntu because at that time ubuntu did not have PWM and otherperipheral support. This is no longer thecase and i believe they can be implemented as they would be in angstrom.

Some key issues with installing that differ from clausqr's blog are:

  • that you will need to implement a swap file. 250 - 300Mb should be enough

  • you will have issues linking collada_urdf.cpp. To solve this I installed libassim3 from its debian package as it is not realised for 12.04 you cant use apt-get directly. Download the .deb and unpack using the command:

    sudo dpkg -i libassimp3_3.0~dfsg-1_armhf.deb

    it will install this onto your system.

additionally I also had to use a patch suggested here. It will not work directly as I suspect that it was written for Groovy. I ended up cutting and pasting into my Collada_urdf.cpp file so that the include statements looked like this:

#include <assimp/IOSystem.h>

#  ifdef __arm__                 // fix for ARM build
#include <strings.h>
bool Assimp::IOSystem::ComparePaths(const char *p1, const char *p2) const
{
    return !::strcasecmp(p1, p2);
}
#  endif

#include <assimp/assimp.hpp>
#include <assimp/aiScene.h>
#include <assimp/aiPostProcess.h>
#include <assimp/IOStream.h>

and the make process completed. unfortunately it installed into my home directory and I'll need to see if it goes to /opt/ros/fuerte/stacks directory like my pc installation.

2.Yes because it seems that it does make a difference in the installation method. Additionally you will need to consider the Operating System on the Beaglebone as that will change things too.

3.Unless I misunderstand your question, I would think yes that way you have a direct link to your hardware using a node that can use the beaglebone IO and publish immediately.

4.for install see 1. above.

5.Of course from a simple computation perspective it is slower than a pc. However from an IO perspective, the ubuntu kernel can poll GPIO and read ADCs inherent in the beaglebone much faster than if it had to talk to a separate IO board such as an IOIO or Arduino or any other external controller via RS232 or ethernet. It could certainly be used as a cheap and fast embedded controller that speaks on ROS. Additionally it has the interfacing potential of a pc without extra baggage such as video driving hardware. Typically with a pc you would require a separate IO/DAQ board.

6.To install I needed the full RAM plus the swap file got to about 260Mb. The core intallation and the level 2 libraries have taken up about 550Mb on the SD Card.

1.I've just finished installing ROS Fuerte on a beaglebone running Ubuntu 12.04 LTS. I followed clausq's tutorial. Note that he was using Debian as an operating system not ubuntu because at that time ubuntu did not have PWM and otherperipheral support. This is no longer thecase and i believe they can be implemented as they would be in angstrom.

Some key issues with installing that differ from clausqr's blog are:

  • that you will need to implement a swap file. 250 - 300Mb should be enough

  • you will have issues linking collada_urdf.cpp. To solve this I installed libassim3 from its debian package as it is not realised for 12.04 you cant use apt-get directly. Download the .deb and unpack using the command:

    sudo dpkg -i libassimp3_3.0~dfsg-1_armhf.deb

    it will install this onto your system.

additionally I also had to use a patch suggested here. It will not work directly as I suspect that it was written for Groovy. I ended up cutting and pasting the code into my Collada_urdf.cpp file so that the include statements looked like this:

...
#include <assimp/IOSystem.h>

#  ifdef __arm__                 // fix for ARM build
#include <strings.h>
bool Assimp::IOSystem::ComparePaths(const char *p1, const char *p2) const
{
    return !::strcasecmp(p1, p2);
}
#  endif

#include <assimp/assimp.hpp>
#include <assimp/aiScene.h>
#include <assimp/aiPostProcess.h>
#include <assimp/IOStream.h>
...

and the make process completed.

2.Yes because it seems that it does make a difference in the installation method. Additionally you will need to consider the Operating System on the Beaglebone as that will change things too.

3.Unless I misunderstand your question, I would think yes that way you have a direct link to your hardware using a node that can use the beaglebone IO and publish immediately.

4.for install see 1. above.

5.Of course from a simple computation perspective it is slower than a pc. However from an IO perspective, the ubuntu kernel can poll GPIO and read ADCs inherent in the beaglebone much faster than if it had to talk to a separate IO board such as an IOIO or Arduino or any other external controller via RS232 or ethernet. It could certainly be used as a cheap and fast embedded controller that speaks on ROS. Additionally it has the interfacing potential of a pc without extra baggage such as video driving hardware. Typically with a pc you would require a separate IO/DAQ board.

6.To install I needed the full RAM plus the swap file got to about 260Mb. The core intallation and the level 2 libraries have taken up about 550Mb on the SD Card.

1.I've just finished installing ROS Fuerte on a beaglebone running Ubuntu 12.04 LTS. I followed clausq's tutorial. Note that he was using Debian as an operating system not ubuntu because at that time of his blog, ubuntu did not have PWM and otherperipheral support. This is no longer thethe case and i believe they the peripherals can be implemented as they would be in angstrom.

Some key issues with installing that differ from clausqr's blog are:

  • that you will need to implement a swap file. 250 - 300Mb should be enough

  • you will have issues linking collada_urdf.cpp. To solve this I installed libassim3 from its debian package as it is not realised for 12.04 you cant use apt-get directly. Download the .deb and unpack using the command:

    sudo dpkg -i libassimp3_3.0~dfsg-1_armhf.deb

    it will install this onto your system.

additionally I also had to use a patch suggested here. It will not work directly as I suspect that it was written for Groovy. I ended up cutting and pasting the code into my Collada_urdf.cpp file so that the include statements looked like this:

...
#include <assimp/IOSystem.h>

#  ifdef __arm__                 // fix for ARM build
#include <strings.h>
bool Assimp::IOSystem::ComparePaths(const char *p1, const char *p2) const
{
    return !::strcasecmp(p1, p2);
}
#  endif

#include <assimp/assimp.hpp>
#include <assimp/aiScene.h>
#include <assimp/aiPostProcess.h>
#include <assimp/IOStream.h>
...

and the make process completed.

2.Yes because it seems that it does make a difference in the installation method. Additionally you will need to consider the Operating System on the Beaglebone as that will change things too.

3.Unless I misunderstand your question, I would think yes that way you have a direct link to your hardware using a node that can use the beaglebone IO and publish immediately.

4.for install see 1. above.

5.Of course from a simple computation perspective it is slower than a pc. However from an IO perspective, the ubuntu kernel can poll GPIO and read ADCs inherent in the beaglebone much faster than if it had to talk to a separate IO board such as an IOIO or Arduino or any other external controller via RS232 or ethernet. It could certainly be used as a cheap and fast embedded controller that speaks on ROS. Additionally it has the interfacing potential of a pc without extra baggage such as video driving hardware. Typically with a pc you would require a separate IO/DAQ board.

6.To install I needed the full RAM plus the swap file got to about 260Mb. The core intallation and the level 2 libraries have taken up about 550Mb on the SD Card.