Ubuntu Linux Installation for Scribblers

The instructions provided here are based on the steps described here. Those instructions are outdated and we have to make some modifications. Note that the Scribbler robot's primary interface is based on Python.

  • Open a terminal and execute the following commands:
:~$ mkdir myro
:~$ cd myro
:~$ sudo apt-get install python python-tk python-serial python-pyxmpp python-imaging python-imaging-tk python-numpy libsnack2 python-pygame festival festvox-rablpc16k
:~$ sudo ldconfig
:~$ wget -c http://myro.roboteducation.org/download/myro-2.9.1.zip
:~$ unzip myro-2.9.1.zip
:~$ sudo python setup.py install
:~$ wget -c wget http://svn.cs.brynmawr.edu/Myro/trunk/misc/ScriptBinding.py
:~$ wget -c http://svn.cs.brynmawr.edu/Myro/trunk/misc/config-extensions.def
  • Find out the python version you are using by typing:
:~$ python -V
Python 2.7.3
  • In the next two commands, X refers to the python version. So, in the case above it would be python2.7.
:~$ sudo cp ScriptBinding.py /usr/lib/pythonX/idlelib/.
:~$ sudo cp config-extensions.def /usr/lib/pythonX/idlelib/.
:~$ wget -c wget http://svn.cs.brynmawr.edu/Myro/trunk/Start%20Python.pyw
:~$ chmod +x Start\ Python.pyw
  • Now we have to setup the bluetooth configuration files.
  • In the terminal, type
:~$ sudo gedit /etc/bluetooth/rfcomm.conf
  • Here is an example of the config file:
#
# RFCOMM configuration file.
#
rfcomm117 {
#	# Automatically bind the device at startup
	bind yes;
#
#	# Bluetooth address of the device
	device 00:1E:19:01:0A:61;
#
#	# RFCOMM channel for the connection
	channel	1;
#
#	# Description of the connection
	comment "IPRE Scribbler Dongle";
}
rfcomm51 {
#	# Automatically bind the device at startup
	bind yes;
#
#	# Bluetooth address of the device
	device 00:1E:19:01:0B:0F;
#
#	# RFCOMM channel for the connection
	channel	1;
#
#	# Description of the connection
	comment "IPRE Scribbler Dongle";
}
  • rfcomm117 and rfcomm51 are for robots number 117 and 51. Add as many of these rfcommX {…..} as you need for all the robots you will be using.
  • To obtain the device address of each robot, insert bluetooth dongle into your computer and make sure the robot is turned on.
  • In the terminal type,
 :~$ sudo hcitool scan
  • After several seconds, you should see a list of all visible bluetooth devices, as shown below:
00:1E:19:01:0B:0F	IPRE6-296474
  • The address with IPRE is the Scribbler.
  • Once you have entered all rfcomm devices in /etc/bluetooth/rfcomm.conf, save the file and close it.
  • In the terminal type,
:~$ sudo rfcomm bind all
  • For starting the python shell and running, type
:~$ python Start\ Python.pyw
  • In the shell:
>>> from myro import *
>>> init()
  • You will be asked for the port. Enter /dev/rfcommX, where X is the number of the robot.
  • If the robot does not successfully connect, enter init() again and repeat until it works (sometimes it takes 4 tries).