OpenROV

I am currently building an OpenROV 2.6 (Remotely Operated Vehicle)

This is an underwater robot equipped with an HD camera that you can drive from your computer. Multiple sensors could be added and feedback is sent in real-time.

I am building this to eventually try it in “Lac Léman” (Lake Geneva) and while diving in the red sea.

Here’s a video from the first test dive in a swimming pool:

Here are a few build photos:

Ferrofluid in a bottle

Ferrofluid according to Wikipedia is “a liquid which becomes strongly magnetized in the presence of a magnetic field.”

Ferrofluid from Wikipedia

I have seen it in several amazing experiments on Youtube and decided to make one myself.

I bought the Ferrofluid and the magnets online through this very cool Swiss store, although there are many tutorials online that explain how to make your own.

The trickiest part is finding a suspension liquid, since Ferrofluid stains everything it touches, if you put it in a bottle just by itself, it will stain the glass and you won’t be able to see anything, this is why the bottle has to be filled with another liquid where the Ferrofluid will be “suspended” in.

 

Ferrofluid Charafantah Ferrofluid Charafantah Ferrofluid Charafantah Ferrofluid Charafantah

The problem that all online sources don’t really agree on what type of liquid that would word best, I experimented with the following:

  • Burning alcohol —> Ferrofluid lost many particles and became a powder
  • Distilled water —> Stained glass, ferrofluid shapes were very weak
  • Mix of distilled water and alcohol —> Stained glass a bit and ferrofluid looked weird
  • Calcium residue cleaner —> Ferrofluid floated
  • Window cleaner and alcohol —-> Promising, but ferrofluid was still looking like sand
  • Window cleaner —> Best results

Filling the bottle with only a windows cleaning liquid gave me the best results, the glass was not stained, ferrofluid kept it’s shape and I was able to see all the cool effects since it’s a clear liquid.

It has been more than 24 hours so far and the ferrofluid is still looking good in the bottle.

The choice of the bottle is very important, as it must be a good quality glass and squared (never rounded), otherwise you will not be able to see the ferrofluid effects due to refraction.

MySQL won’t start after power loss

So I had a power outage this week and my Pi server restarted, after reboot I noticed that WordPress wouldn’t start anymore. Starting mysqld manually would cause the following error:

03:02:19 UTC – mysqld got signal 6 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.

Most pages returned by Google say that the InnoDB is probably corrupted and suggest to force recovery in my.cnf using the flag

innodb_force_recovery = 4

The innodb_force_recovery takes a number from 1 to 6.

However, none of these options could get mysqld to start, I was always getting the same error.

Here is what I did to get it to work:

  1. In my.cnf add innodb_force_recovery = 6 in the [mysqld] section (mySQL manual)
  2. In my.cnf add innodb_purge_threads=0 (this what allowed mysqld to start in read only mode)
  3. Start mysqld (“mysqld –verbose” or “/etc/init.d/mysqld start”)
  4. Check for corruption: mysqlcheck -p –all-databases
  5. Find the corrupt table and do: myisamchk -r -v -f <table_name> (where the data file is stored)
  6. Using the mysql recovery command did not fix anything, it was unable to recover the error, but you are welcome to try
  7. Backup your data: mysqldump -A > /home/user/backup_dump.sql
  8. Stop mysqld
  9. Delete /var/lib/mysql/ib*
  10. Comment the 2 lines you added in my.cnf
  11. Restart my mysqld
  12. Restore from the SQL dump if needed

The Pi server

I moved the hosting of my website to a new server… a tiny new server, the size of a smart phone located in my office room.

Pi, Raspberry Pi is the name of the new server, it is according to Wikipedia:

The Raspberry Pi is a credit-card-sized single-board computer…which includes an ARM1176JZF-S 700 MHzprocessor…512MB RAM…SD and HDMI

Here’s a picture:

Raspberry Pi

What’s great about Pi is that it’s tiny, powerful for it’s size, can run Linux, has many interfaces (2xUSB,1xHDMI, 100MBit Ethernet, audio and composite), low power consumption and moderately priced.

It all started with Google abandoning Reader, my favorite RSS feed reader and me unable to find a decent replacement, Feedly looks really nice in a browser but a HORRIBLE android app, old reader is a good compromise, but has no apps at all.

This is why i decided to move to Tiny, tiny RSS…which needed it’s own server and my hosting provider did not allow me to install; thus I decided to get my own hosting.

Redirect WordPress Feeds

Moving my blog was a pain in the ass, the most difficult part was to mantain the redirections so search engines and feedreaders could still access my new blog using the same URLs and without the users having to change anything.

Since there was no much help online, here is how to make a 301 http redirect that will allow all requests and QUERY STRINGS passed to your root folder to be redirected somewhere else.

<?
header( “HTTP/1.1 301 Moved Permanently” );
header( “Status: 301 Moved Permanently” );
header( “Location: http://www.charafantah.com/wordpress/?”.$_SERVER[‘QUERY_STRING’]);

exit(0);

?>

Save this as index.php of your old location, this way if your old feed used any querystring parameters e.g. /?feed=rss2  it will be redirected properly, also direct access to your old blog home, will be redirected to the new place.

When corruption meets geekness

Moftasa posted this article on how he wrote a linux script that downloads all the obituaries published in Al Ahram newspaper between 2002 and 2008, finds all the names of people with Police titles then finds the family relations between them!

The script does the following:

  • The first step is to convert the HTML files downloaded by curl into one giant text file.
  • Then to move each separate obituary into a line of it’s own.
  • Extract officer names sandwiched between rank and place of work into a separate text file.
  • Search for the names of each officer through each obituary, family links between different officers can be discovered.
  • The output is in GraphViz .dot format.

This is as cool as the Oracle Of Bacon

Bravo Moftasa.

Geek Stuff – Retro headset

Anyone remember 4 years ago, when i made a gadget called Pokia? it was a mimic of the original Pokia phone (now called Hulger); Here it is:
 

Anyway, i was surfing on ThinkGeek a couple of days ago, and found they have a “Retro bluetooth headset”, it’s basically the same idea of the Pokia, but with bluetooth 🙂

So i decided to make my own, thanks to Samer for the bluetooth headset, i used the old headset from my old pokia, and changed it into a bluetooth headset 🙂

I used Motorola HS820 bluetooth headset, my Samsung D600 phone and a Bell Phone retro headset from an old phone i had.


disassembling the headset was easy

The difficult part was to fit everything
in the headset and make
the buttons and charger to work

So yea! if you see some crazy dude talking in a retro headset with no wires connected to it, thats me and my bluetooth phone 🙂

And yes, i am a crazy geek 🙂