I am beginning to write a python version of HouseControl. It is more convenient to use python on the Raspberry Pi and it will be interesting to see how easy it is to convert. As communication is by sockets the Java and python versions will talk to each other. So I can run Java on some nodes and python on others.
I will use the same architecture for the python version, with interfaces and plugins. I think I will call it PythonControl.
For the python version, I am concentrating on the things that I want to do on Raspberry Pis. These are mainly controlling my door camera and my robot.
For the door camera, some of the things that I want to do are:
- Turn the LED on the camera on or off
- Take a picture or video
- Text to speech (for scaring people who come to the door)
- Turning motion capture on and off
- Turning the microphone and speakers on and off
- Shutdown or reboot the Raspberry Pi
For the robot, I have previously written a python socket server that moves the robot around, control the arm, and does text to speech. I will convert this into PythonControl plugins, so that I can control the robot via my HouseControl interfaces, such as HouseChat.
I run XBMC on the Raspberry Pi, but I don’t need to run HouseControl (or PythonControl) on this as I control it via the http json rpc interface, and that works fine from the PC.