ROS Resources: Documentation | Support | Discussion Forum | Service Status | Q&A answers.ros.org

Anyone using roslaunch to load remote nodes?


#1

Hi

Is anyone using roslaunch remote ? If so what are your git status’s ?
I based every thing on Yocto branch morty.

When I ecxecute a rosluanch file to launch some nodes on remote machines I get

started roslaunch server http://192.168.1.187:36229/
remote[Computer_3-0] starting roslaunch
remote[Computer_3-0]: creating ssh connection to Computer_3:22
remote[Computer_3-0]: failed to launch on ROW3:

pycrypto is not installed


[Computer_3-0] killing on exit 

there must be some inconsistencies in the checked out versions and branches I am using.

But what is the right combination of things ?
what is working for you ?

python-pycrypto is not present in meta-python before a625494863b70f13ca29b4b0322fbfd5a8a073d9@meta-openembedded
and that commit is not yet present in branch: morty

  • What are you doing ?
  • Is it advisable to back port python-pycrypto ?
  • or hack my way out of it with a .bb or .bbappend ?

I prefer to stay on the morty branch since it’s the current Yocto version.
I tried a checkout of master@meta-openembeded but that spawned a zillion python errors

BR. Lars Larsen

here is my git status’s:

meta              
meta-poky         
meta-yocto-bsp    = "morty:6a1f33cc40bfac33cf030fe41e1a8efd1e5fad6f"
meta-linaro       = "morty:69a8bac680362906c9d261424c62749f7e555ca2"
meta-ros          = "master:8a3adc1a6542f2c8a40b36021a78dc1057e3ed08"
meta-fpe          
meta-overloads    = "develop:fe0c15311c1d38698e57556c0da869743d7c91e9"
meta-networking   
meta-oe           
meta-python       = "morty:fe5c83312de11e80b85680ef237f8acb04b4b26e"

#2

ROSLAUNCH will use the local scripts. At least, everything is working properly, and you are informed of the problem.

First, try to install pycrypto via pip.

https://pypi.python.org/pypi/pycrypto

If pip do not find it for your target, take the source and compile it for your target, make a packet and spread it across your devices.


#3

thanks, but that is not an option for me.
I’m working with an embedded system, there is not such thing as installing on the target
I need a complete distributable image on build.
-L


#4

If you think so, then you have to redo your software without pycrypto.

if you are using Yocto, then, it is a linux distribution. Probably using the Intel Edison. You can cross-compile the library or compile it directly on the Edison.

If you do not understand what I am telling, then change your board and take a more flexible board like an Odroid or a RPi.


#5

Hi Alexis

I understand you, but - there is NO compiling or installing on the target, all building must be handled by bitbake.
Just grabbing an other board is not an option either, the hardware is a prerequisite, an Intel Atom PC-board MACHINE=genericx86.

I’m trying to work out an entire new framework for an existing product, and trying to employ ROS to gain some flexibility, I ran into this problem when experimenting with roslaunch off remote nodes.

It is roslaunch that employ pycrypto when SSH’ing to the remote node, so I kind’a can’t redo that part.

I hope there is a combination of git commits that works, or am I stepping in to uncharted land here ? ( I doubt it though !)
-L
PS: as a side note: Using roslaunch with local nodes works like a dream, so maybe I should just drop the idea of remote launches ?


#6

Check out UP board for an x86 Atom. It was a solid choice for my ROS
project.


#7

Hi Mario
thanks,
I don’t have any freedom in choosing hardware, it has been done elswhere in the organisation, I must make do with what I have
-L


#8

@lhl

Remote roslaunch requires both pycrypto and paramiko to be installed in order to use SSH.

I think the best course of action would be to do something similar to what @mpthompson did in this commit, but for pycrypto and paramiko.


#9

@rohbotics

thanks,
that’s an obvious way,
I will look into that
-L