Pattern Lock on Arduino (as in Android)

Most of us are familiar with ‘Pattern lock’ which is one of the popular security features on Android phones. I wanted to create something similar for Arduino and here is the basic demo that I got working.

I used a Arduino Mega board and 3.2″ LCD TFT Module with 4 Wire resistive touch screen to build this small demo.

The application primarily has 2 screens. One for ‘setting the pattern’ (record mode) and the other for unlocking (lock mode). In both these cases, the screen is virtually divided into a 3×3 grid of hot spots which are displayed as circles on the LCD. In the record mode, the sequence of touchscreen interactions on these hot spots is captured and saved as a pattern. In the lock mode, the pattern drawn by the user is matched with saved pattern to the unlock application. I have tried to make it look like ‘Android pattern lock’ but I guess it is not yet there and needs refinements.

In the video below, you see the demo of unlocking using the pattern. The video also shows how one can record their own unlock patterns.

The code that I currently have is not very clean; will try to tidy up the code when I get some time.

Please post your feedback / suggestions in the comments.

My new mobile Nokia E71 – initial thoughts

I bought a new mobile last week – the Nokia E71 – and eversince I’ve been smitten or is it bowled over or perhaps head over heels in love with this new toy. I can’t stop exploring and using its features, showing it off and talking about it to whosoever will lend me a ear.

The plan was to do a detailed review, but time not permitting, here are my initial thoughts.


  • Form factor: A full metal body makes the Nokia E71 sturdy and sleek. Lookswise, it’s lean and well-toned.
  • Built for business: From every conceivable angle, this phone is made for the man on the move. It has all the productivity features that one could ever wish for in a business phone. I wonder how Nokia could fit so many features in a compact 10 mm thin body!
  • Features / Applications: Multiple mail boxes, Full Outlook sync, Push Email client, WLAN, QWERTY keyboard and a excellent browser. This device runs on Symbian S60 (3rd edition) – install applications and extend its capabilities as much as you want. I am really enjoying playing with this toy!
  • Multimedia: It has decent (not great) multimedia features for a business phone and comes with FlashLite 3.0 player. Apart from regular audio and video stuff, you can also watch YouTube videos online or playback FlashVideo (.flv) files from your memory card.
  • Blue-ribbon basics: As with any Nokia phone, the reception quality is very good and so is the battery life. I make and receive phone calls frequently and yet the battery charge last for 2-3 days.
  • Stallion-like speed: Talk about speed and the Nokia E71 just flies sans wings. I’ve been using it for almost 10 days now, have installed around 15 applications but see no difference (read slowdown) in performace. Did I mention that I never had to reboot even once?


  • No Carl Zeiss here. So, don’t expect much from its 3.2 MP camera. Picture and video quality is mobile-ish, if I may say so.
  • No touch screen or Accelerometer in this phone. I personally wish it had an accelerometer, so that I could play around more with it.
  • The QWERTY keyboard is a little too small – had it been a wee bit wider it would have been better. Or perhaps it’s about getting used.
  • Expensive.
  • 2.5 mm headphone jack.

Btw, I made this blog post from this phone. Not as comfortable as posting from desktop and had to do some editing later!

I am moving…

Friday (3oth May) was my last working day at Patni. I have accepted a position at NetPixel, at their Hyderabad ODC. More about this in my next post.

Even though my stint at Patni was the shortest (only 13 months) so far in my career of 10 plus years, it was a great experience. During my tenure at Patni, I have worked on two projects‘Octopus’ for Visage Mobile and for a longer period on ‘Zephyr‘ for D Software Inc.

Building ‘Zephyr’ from scratch was a thoroughly enjoyable challenge. I contributed to Zephyr’s Flex client architecture and developed some of its critical modules. Apart from being a complete product development exercise, Zephyr gave me the opportunity to work on-site to bring the first beta version out to the customer. I also had the privilege of working closely with Samir Shah, Vivek Ragahavan, Issam Bandak and Shailesh Mangal which was an enriching experience. And, presenting the product to an Indian audience at initRIA, Bangalore was a first for me.

Looking back, as one generally tends to do at a time like this, I can without doubt say that I truly enjoyed my days and nights at Patni.

In conclusion, I would like to go on blog thanking all the people who have helped, supported and encouraged me at Patni.

I wish everyone at Patni and Zephyr all the best.

The new Gmail loading progress bar!

One of the first things I do every morning is check my Gmail and today, I noticed something different–the Gmail loading progress bar. This is something I have never seen before and I quickly took a screenshot. Here it is:

Gmail loading progress bar

Googled this but could not find anything related. Btw, I love the link, ‘Load basic HTML’ at the bottom right of the screen–it helps you quickly switch to HTML version when loading takes too long on slow connections.

The folks at Google are always innovating to provide a better user experience. Thank you Google.

Update: Strangely, this new loading progress bar is displayed only in Firefox, it does not appear in IE. IE still shows the text ‘Loading…’.

initRIA was great!

It was a great experience being at initRIA conference held on 16th December at Bangalore. It was my first conference of this kind and I got to meet many people from the Indian Flex community who came in from all over the country.

The presentations were quite interesting and the coolest one being the Live-Documents by InstaColl. Although it was not scheduled, I got the chance to quickly demo our product ‘Zephyr‘ to the community towards the end. The enthusiasm of the audience was high throught the day and the fact that sessions stretched beyond the schedule speaks about it.

Thanks to Mrinal for making such an event possible. Abdul had clicked some photographs, get them here. Read more about this event here and here.

Hope to see more such events soon!