Using Robodaemon at SOCS

Starting RD11

To run RD11 at socs, log into a FreeBSD box and do the following:
setenv LD_LIBRARY_PATH /u6/grad/robbo/MMRA/lib/Robodaemon
setenv XUSERFILESEARCHPATH /u6/grad/robbo/MMRA/etc/app-defaults/%N
~robbo/MMRA/bin/RD11

If the DISPLAY environment variable is correctly set, you should get a window like the one on the robodaemon web page. If you don't set the DISPLAY variable, you can still run RD11 but you won't get any graphical output. The startup terminal message will indicate something like this:

RoboDaemon CVS: 1999.11.22 Build: Mar 29 2000
===============================================================================
  Developed by Gregory Dudek at McGill University.
    in collaboration with Michael Jenkin at York University.
  Sonar model developed by David Wilkes, G. Dudek, M. Jenkin, E. Milios
    at McGill, York University and the University of Toronto.
  Rewritten, revised and debugged by Marc Bolduc and Thierry Baron (1996,1997)
                                      and Robert Sim (1998-present)
  Copyright (c) 1996-1999 all rights reserved.
  Authors assume no liability for performance.
  Inquiries: [simra,dudek]@cim.mcgill.ca
===============================================================================

Accepting connections on socket 5090
init file /tmp/RD11/etc/robodaemon.init not available, but that's OK.
environment variable ROBODAEMON_INITFILE not defined, but that's OK.
init file /u6/grad/robbo/.robodaemon.init not available, but that's OK.
init file ./robodaemon.init not available, but that's OK.
init file ./initcmds not available, but that's OK.
/local/mrl/etc/app-defaults/grad.xpm Xpm Warning: Cannot open file.
RDShell-1> 

Don't worry about the diagnostic messages indicating missing files and the missing xpm.

Command line options

The only command-line option you should really care about is '-m'. Running 'RD11 -m' instructs robodaemon to bind to a port other than the default, which is 5090. The startup terminal message will indicate something like this:
Accepting connections on socket 4107

Note that if you don't use -m, you might connect to someone else's running RD11 process when you run your code.

Documentation

All the online documentation for RD11 commands is in file:/u6/grad/robbo/MMRA/doc/RD11/index.html. or at here. Don't sweat the fact that it says RD10 everywhere, it's about as useless now that it was then. :-(

Also, feel free to browse the few man pages in ~robbo/RD11/man. They apply mostly to the runtime libraries.

Using libRD11

Grab the sample code from here. (If you grabbed it before, be sure you have the tarball with Makefile.socs) Then do the following:
tar xzvf testRD11.tgz
cd testRD11
make -f Makefile.socs
Warnings:

The set of function calls available in the libRD11 can be learned from file:/u6/grad/robbo/MMRA/include/RD11.h or here.

Send me mail if you have questions.

Binary tarball

There is a binary tarball for adventurous users to try on their home machines. It's at socs in ~robbo/RD11.tgz. You'll need glibc 2.1, and you'll need to adjust my instructions and the testRD11 makefile accordingly.