ROS on RaspberryPi
ROS (Robot Operating System) on Raspberry Pi
Someone else's tutorial here.
Webcam on Raspberry Pi!
Camera is Logitech C310 running about 30fps at QVGA (320x240). This camera does run up to 1280x960, but RPi with guvcview will only handle a few frames per second at that size. Perhaps the processor is working pretty hard decompressing the camera's MJpeg video stream to the console display.
Although I was running a debian wheezy build, it still required updating the RPi software to get USB video working:
sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade sudo wget http://goo.gl/1BOfJ -O /usr/bin/rpi-update sudo chmod +x /usr/bin/rpi-update sudo rpi-update sync sudo reboot
About rpi-update here. The sync command before reboot may be important to avoid corrupting the SD card boot partition.
My ros/fuerte is only a partial install, and does not include OpenCV...yet.
An interim report on the Raspberry Pi as ROS communications controller:
I have three devices connected together
1. Arduino nano, running a small program which collects data from 6 A/D channels at 50Hz and reports it using rosserial protocol to...
2. Raspberry Pi, running debian/wheezy and ros/fuerte. I installed the rosserial_arduino package and its dependencies (with a few hitches). One process, serial_node.py, handles the host side of the rosserial protocol and participates as a full ros node on the network, publishing the stream of measurements. The RPi is running an XDE desktop at 1920x1080, but I don't have any graphical apps open right now.
3. An ordinary desktop box, running ubuntu 12.04 and ros/fuerte, connected to the Raspberry Pi over an ethernet LAN. On the desktop I ran rxplot (a graphical realtime "strip chart" app) to visualize the data from a sine/square oscillator feeding two of the Arduino input channels. I also SSH'd into the RPi and ran top for a view of resource usage.
The result is shown in the several windows of the attached screenshot from the desktop machine.
The performance is not stunning. From the sinewave, I'd say timing jitter looks to reach 40 or 50 millisec peak (although it is usually much less). This single task takes up an awful lot of the RPi processor; top shows only 25% idle time in this snapshot. The python process running serial_node.py is hogging most of the cycles.
I finally succeeded in installing the ros fuerte image from ROS Fuerte Raspbian Image on the 8GB SD card using my Windows XP laptop. The problem last night was that Win32DiskImager is not very compatible with laptop built-in SD card readers (bug), so I used the flashnul technique described here: Copying the image to an SD Card on Windows if first option isn't successful