The video for our 2nd year master’s project is up on Youtube. It’s an interactive painting aid for beginner artists, or advanced users who like to experiment with new technologies.

You can contact me for additional information about the project


Processing2 Project – FrenchVille

You can download the project via:


What does it do?

This map is a simple visualisation of French cities.

How to run?

Extract the .zip file. Open tp1.pde with Processing and run.

How do I interact?

In order to emphasize the most densely populated cities in France, the radius of the circle shows the population and the transparency shows the density of a selected city . To select one city, simply hover over its circle.

You can change the population threshold by up and down arrows on your keyboard to change the number of visible cities.

The name of the city will be shown next to your cursor.




Processing2 Project – FrenchVille

Google SMTP problem

I had a small project in C# just to test my skills. The other day I realized that it throws an exception during runtime. Apparently, it is because of lack of client timeout. I share my code fragment which serves to send a mail from my account to my account. (Don’t ask me why). Larger the client timeout value, more reliable your code is.

SmtpClient client = new SmtpClient();
client.Port = 587;
client.Host = “smtp.gmail.com”;
client.EnableSsl = true;
client.Timeout = 200000;  /// I found this value by trial and error 
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential(“yourmail@gmail.com”, “yourpass”);

MailMessage mm = new MailMessage(“yourmail@gmail.com”, “yourmail@gmail.com”, head, body);
mm.BodyEncoding = UTF8Encoding.UTF8;
mm.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;


 Hope it works for you. Bisous bisous.

Google SMTP problem

Read access to HFS+ partitioned external disk on ubuntu

So my girlfriend had this toshiba 640gb external disk and we wanted to watch a movie. However, she uses that external disk on her Mac (shame).

If you are lucky (I am never lucky), the disk is ext3 partitioned and wouldn’t cause you any problems. In my case it was a HFS+ partitioned disk so I had to querrel a bit.

First, check your disc’s partition using Disk Utility under system > adminstration. You will see that the disk is mounted on /dev/sdX, where x depends on your machine. It was sdc1 for me.

Next download hfsprogs:

$sudo apt-get install hgsprogs

Then reconnect your disk. I assume that the disk is mounted automatically. However re-mount it using:

$sudo mount -o remount,rw,force /mount/yourdiskname

Now become root to be able to see what’s inside the disk:

$/usr/bin/sudo /bin/su

$su -l

You will see that you became root at that point. Now by doing 

#cp filename /home/yourusrname/yourdirectory

you can copy and access your file. Don’t forget to change your copied file’s permissions to use it easily.




Read access to HFS+ partitioned external disk on ubuntu

Using mt9p031 image sensor on Beagleboard-xM rev C5

One of the tasks I’ve been assigned to was to use mt9p031 aptina sensor (with Leopard Imaging LI-5m03 camera board) on a Beagleboard-xM (rev C.5)

if you want to use this module on a different kernel than linux 2.6.32, try looking at max galemin’s page:


For 2.6.32 kernel, things are pretty straigthforward. I will assume that you’ve already partitioned your SD card.

Now go to narcissus’ site to download the online build for your beagleboard.   http://narcissus.angstrom-distribution.org/

-choose beagleboard as your target machine for the rootfs

-add Mplayer to you additional console packages

-choose bootloader files in platform specific packages.

Download and uncompress your file to your /media/Angstrom partition. ( tar xfvz *.tar.gz -C /media/Angstrom)

go to /media/Angstrom/boot

$cp MLO* /media/boot

$cp u-boot* /media/boot

$cp uImage /media/boot

Now change the bootarg by introducing a txt file containing your environment variables

uenvcmd=mmc init; run loaduimagefat; run mmcboot
console=”tty0 console=ttyS2,115200n8″

Save this file under the name of uEnv.txt and copy it to /media/boot

You might want to change your dvimode depending on your monitor resolution, I only tested this one.

Now boot your Beagleboard and login as root. Do

$opkg update

$opkg install kernel-module-mt9p031

$opkg install ntpdate


$umount /media/Angstrom

$umount /media/boot

When you restart your BB, you will see that a video0 device has appeared in /dev. If you have a monitor, you can test your camera with this command:

$mplayer tv:// -tv driver=v4l2:width=1280:height=720:device=/dev/video0:fps=15 -vo fbdev

or you can take snapshots with:

$mplayer tv:// -tv driver=v4l2:width=1280:height=720:device=/dev/video0:fps=5 -vo jpeg

I should say that I am not satisfied with the quality, as it seems to be that the camera is depending to much on the light.
I will try to work on it, and put the results on my blog.
Using mt9p031 image sensor on Beagleboard-xM rev C5