Linux Distros for Free : Mumbai

Hello folks !!

Just today I woke up with this great idea of doing something good and something useful.
Well, I was thinking what it could be, when I suddenly tried a software which increased my Internet download speed exponentially ( 7kbps to 400kbps is exponential from me 😀 ). Then it struck me !!

I am going to try and spread Linux distros around me…
My major reasons for deciding to do so are :

1. Linux is a great open source alternative and the communities are active
2. Its not very popular among people I know and people around me

3. People who are interested can’t get their hands on distros, since none of them except Ubuntu give out free CDs, and downloading or paying for them somehow doesn’t appeal to a vast majority of us Indians… 😉

So, here’s how I aim to do it :
1. Drop me an email or comment on this post with your emai id if you are interested in a Linux distro I mention below or any other (free) distro which you have in mind
2. I contact you
3. You provide me a blank CD and I burn the distro on it for you. Simple !!
4. Also, please do spread the stuff around, as this is what this initiative is about anyways.

AND BEFORE YOU ASK, I AM PLANNING TO DO IT FOR FREE !! (Unless you REALLY want to pay me for it 😀 )

Also, if you are interested in helping me with my initiative ( since I can’t reach out to too many people alone), please contact me via email and we can work something out.I really need help from you people if this is to succeed, you know.


I am in the process of adding distros, so please bear with me while the entire list comes up.

You can find a list of various popular distros and their comparisons here:

1. Linux Forums

2. Distro Watch

You must realize that this is a free service meant to help you all, so please do not try to sue me. I am just trying to provide the software as is. I do not promote use of any of the above software. I am not responsible for damages/losses or any adverse effects resulting out of use of any of the distros provided. It may not be possible to respond to all requests, but I will try my best.

Way2SMS : Simply awesome !!

I am quite freaky about my email and like to check into my mailbox every hour or so. Now, I do not have a Blackberry and my service provider does not provide me with an email notification service. So what I used to do was use GPRS to check my email, which was quite fussy, with me having to open my mobile browser,go to my email homepage etc.

Recently, I was searching for a convenient alternative when I came across “Way2SMS” which provides exactly what I was looking for : free SMS notifications as soon as new email arrives !! Awesome !!

How it works :
I sign up for a Way2SMS account, they ask me what user id I prefer ( its something like, fill up your number and some minor details and your account is ready !! Then you go to settings, and in the SMS tab and activate mail notifications. Simple !! Awesome !!

Now,all you have to do is forward a copy of your email ( from whichever email ID you use) to your way2sms id and you are done…Every time you get an email, you get notified on your cell phone.Plus, they also let you chat on your GTalk and Yahoo! ids from within their dashboard, pretty decent mp3 ringtones,an address book, quick SMS and Group SMS. Their SMS feature also beats SMSGupshup because they allow you to send SMS upto 110 characters and unlike SMSGupshup, all of my messages till now have neither been delayed or lost.

The only catch I found in Way2SMS was that they require you to activate your email notification setting every 7 days, otherwise it is automatically deactivated.I understand its a way to make sure users keep coming back and not forget about it, but I am sure they will be able to work out a better way.

Ok, to sum it up, here’s what I loved about it :

  • Instant SMS updates (they claim 10 secs. and deliver too) on receiving email
  • Usable with any email service that lets you forward email,even official IDs
  • Customisable,in case you want to receive only specific updates
  • You can select what time and days you prefer to receive notifications
  • You can select to receive notifications only from your contacts
  • They do not serve ads at the end of email notifications (not yet,anyways)
  • You can notify recipients on their mobile when you send them email (!!!)

I hope they carry on the good work !! Kudos, guys !!

Disclaimer : This is NOT a paid review. All views expressed here are my own.

Exernal Interrupts on the ATMEGA

So, now you know how to use the ADC and the UART features present on the ATMEGA.The ATMEGA16/32 has one more feature of great importance to us : external interrupts.

Click here for a quick intro on interrupts.

Okay, now why are they of importance to us ? A lot of stuff generates signals in the form of voltages or voltage changes to indicate decided events. For example, a device might have one line which goes low for a few clock cycles and then high again to indicate that it has completed its task.We can therefore use this line as an external interrupt line to schedule further tasks.

The ATMEGA16/32 has 3 external interrupt lines : INTO,INT1 and INT2, on pins PD2,PD3 and PB2.

Interrupts on INT0 and INT1 can be

1. level-triggered(meaning that the interrupt is triggered when the signal goes low i.e. 0V for some time


2. edge-triggered(meaning that the interrupt is triggered when the signal changes from high to low or low to high)

====> INT2 can only be used as an edge-triggered interrupt.

Setting up the interrupts :: Control Registers

MCUCR : MCU Control Register

Bits 3,2,1,0 are the ones which are of importance to us.

Bits 3,2 are used for sensing an external interrupt on line INT1.
Bits 1,0 are used for sensing an external interrupt on line INT0.

The table for setting up these bits is as follows :

The table for INT0 is similar to the one above.

It is to be noted that if an edge triggered interrupt is selected, the edge (change) must last for at least one cycle for it to be detected. Similarly, if a low level triggered interrupt is selected, the low signal level must be held till the instruction being executed currently by the MCU is completed.

MCUCSR : MCU Control and Status Register

Bit 6 is the only one of importance here, and controls the INT2 line.

If this bit is set to 1, a rising edge generates an interrupt and if it is set to 0, a falling edge generates an interrupt.
The pulses here also must be longer than one clock cycle.

Also, the ISC2 bit must be set following a specific method,since an interrupt can occur even while changing the ISC2 bit.

The procedure is something like this :

1.Disable INT2 by clearing its Interrupt Enable bit in the GICR Register.
2.The ISC2 bit can be changed.
3.The INT2 Interrupt Flag should be cleared by writing a logical one to its Interrupt Flag bit (INTF2) in the GIFR Register before the interrupt is re-enabled.

GICR : General Interrupt Control Register

Bit 7,6,5 enable the INT1, INT0 and INT2 lines respectively if set to one.

GIFR : General Interrupt Flag Register

Bit 7,6,5 manage the status of the Interrupt requests. The flag is set for each of these when the respective line is triggered, and cleared when the corresponding interrupt service routine is executed.Alternatively, we can clear the flags manually by writing it to 1.

Click here for sample code.

Resources :

1. ATMEGA 16 Datasheet
2. Introduction to interrupts
3. Sample Code

The images of the register configurations have been taken from the ATMEGA16 Datasheet.