I didn't have the correct plug for the interface, so I really spent quite a long time on the software while I was waiting. Tonight, I said to my wife: "I connected the vacuum cleaner to the computer." said replied "What took you so long?"
I'm extremely pleased with the result. The video shows:
- the bot driving around (cautiously - this is not full speed) under control of a Logitech Attack 3 joystick (!)
- then a quick demo of how I can control the main brush motor, the vacuum motor and the side brush motor (again using the joystick)
- and finally that I even have control over the colour of the front panel LEDs as I use the Z-axis of the joystick to fade the power LED from green to red and back to green again!
The robot already contains a serial interface which is spectacularly well documented by the manufacturer. As you can see the interface is TTL (much like the UART in the PIC) so you need to add a MAX-232 to get PC com port line levels. (See photos.) So, in theory, it would interface directly to the PIC without all that nonsense.
This will never be used as a vacuum cleaner. That would be a terrible waste of technology. This vacuum cleaner should be a compulsoy purchase for anyone wanting to learn to program a floor turtle.
It has been suggested that I empty a vacuum cleaner bag all over the floor, then drive the bot around in order to Write LMR in the dust. I've not ruled it out. Imagine.