Learning Pleo and His Tools

I have spent quite a bit of time on the Georgia Tech class website that used Pleos, and have tried to follow the instructions there the best I can.

The first change I had to make was reformat my computer and install Windows 7 32 bit. I was previously using the 64 bit version, but read that that might cause problems down the line.

After the reformat I was able to control Pleo’s movements with a program called Myskit . This is very easy to use, and is basically a GUI that lets you set a routine of sound and movement for the Pleo. You then “compile” your skit and upload it to a SD card which you plug into your Pleo. When starting up, the Pleo first checks the SD card for any programs before it boots into the normal routines/mode, so if you did everything correctly Pleo should carry out what you created right after you turn him on.

I was also able to connect to the Pleo via USB and issue him instructions in real time via Putty. You can also use this method to monitor and activate the various sensors. There are instructions on how to do this in the Pleo Developers Kit (PleoDevelopmentKit\PleoDevelopmentKit\documentation\Pleo Monitor) which can be found on the above Georgia Tech Website. These interactions occur while Pleo is operating in normal mode, and seem to be more of “suggestions” than commands. For example, if you ask Pleo to play a sound while he is asleep, he will refuse. There is a key distinction here between this and the above method of making a routine on the SD card, because in that mode have Pleo’s “full attention” (he is not running LifeOS at that point). However, when communicating with Pleo in real time you are competing with his normal programming. I have read that people have had success combining the two methods (i.e. make a “blank” routine on the SD card so Pleo is not running LifeOS, and then issue him commands in real time while he is not doing anything else). It should also be noted that the USB connection seems unreliable and likes to randomly terminate.

There is another program called MiGIO that students seem to have used to manipulate Pleo via USB, but I was unable to get it working. It is also on the Georgia Tech site, and seems to be a C++ program that you compile locally and run. However, it is dependent on additional libraries called OpenCV which I downloaded but had trouble combining with MiGIO.

Tomorrow I will focus on trying to program in PAWN (a C like language Pleo’s OS seems to be written in) in order to achieve greater control of Pleo.

Lastly, I should note that it does not appear to be possible to receive real time video streams from Pleo’s stock camera. From the Pleo Development Kit documentation

“Note that the NXP ARM7 processor in Pleo’s head is responsible for image capture
and analysis, and the high-level information is then passed to the main Atmel ARM7
processor in Pleo’s body. They are connected via a relatively low bandwidth UART
connection. For this reason we cannot stream live video or audio from Pleo. “