Pre-requisites
Plasduino being an open-source project, we try hard not to re-invent the wheel (i.e., we rely on a whole bunch of other open-source projects). Depending on your taste/OS this might be good or bad. If you want to run plasduino on GNU/Linux, the package manager of any reasonable distribution will make the installation transparent to you. On Windows and MAC, everything's a little bit trickier.
Once you (think you) are done with the installation, there is a tiny handy module called Doctor that is meant to help you making sure you have the right environment to run plasduino. If you are experiencing problems try and run it—hopefully it will give you some useful piece of information.
Note that you won't need each single package listed below for each single plasduino module (and you might be able to run modules with as little as python and PyQt4). Refer to the module documentation for the list of pre-requisites specific to that module.
That all said, here is the lundry list of the stuff (not including plasduino itself) you need in order to run plasduino in all its glory.
- python, the scripting language plasduino is written in. The development is currently going on with version 2.7.3, but there's no reason to expect the code wouldn't work with any reasonably recent python 2.x version (say 2.3.7 or later). We also try and make our code python 3 friendly, so that we should be ready when that will take over the world. If you're running a GNU/Linux distibution, then you have python straight out of the box, no need to worry about this.
- PyQt4, the framework used for the graphical user interface. Again, any version should essentially work out of the box, as we're not really using any advanced feature. The binary installers for Windows contain everything needed for PyQt development except for Python itself.
- PyQwt, a graphical library extending PyQt with widgets for scientific applications (most notably, we use this to plot stuff).
- pyserial, a python module (not part of the standard library) for the serial communication with the arduino usb interface.
- avrdude, an utility to download/upload/manipulate the ROM and EEPROM contents of AVR micro-controllers. plasduino comes with all arduino sketches pre-compiled (at least for a tiny subset od the arduino boards), but you still need this to upload the sketches themselves on the on-board micro-controller.
- the arduino software, including all the development code necessary to build your own sketches and a serial monitor useful when debugging. If your're running under Windows you'll need the drivers (essentially a .inf file) that are shipped with the arduino software, so effectively you do need to install this even though you're not planning to recompile the sketches yourself.
- pyaudio, the python bindings for the portaudio cross-platform audio API. This is only required by the plasduino modules using the audio card.
- ffmpeg or avconv, providing video decoders for the Videoclick module. Mind that if you're using Fedora you do need to enable the rpmfusion repository to have access to ffmpeg.
- scons, a software construction tool that we use to compile the sketches against the arduino libraries. You'll only need this if you want to recompile the sketches yourself through the SConstruct we provide (assuming we do provide the binaries for your own board); otherwise you can just use the precompiled binaries shipped with plasduino.