Interfacing Arduino Uno with LG 420 GSM phone

Hi, I have an old prepaid LG-420 GSM phone I would like to use to send SMS messages from my Uno. I would like to use this phone instead of buying a GPRS shield, which is above my budget.

I am curious if anyone's had any luck interfacing an Arduino with a cell-phone? One idea may be to hack the keypad of the the phone and generate DTMF tones with the Uno to emulate keypresses, though I kind of doubt the phone uses DTMF internally. I could also wire each button of the phone to a D-O pin, but the Uno doesn't have enough I/O to do that.

The best thing I think is to control the phone via its USB port. Does anyone have any experience/suggestions on how to do this?

Here's one way to do it -> ,

felis, thanks for the reply. This will work,but I'm trying to do this on the cheap, so I'm trying to interface the Uno directly with my existing phone, using the Uno's I/O pins to communicate via serial (or whatever protocol is required) over USB. I don't have a USB host shield, which is necessary for DealExtreme's device.

Unless this has already been done before, it may be more trouble than it's worth, and I may end up shelling out the $50 for a USB host shield and DealExtreme's GSM device. Or ... I may end up getting this: (since it'll end up costing the same, but will be more compact)

My original question is, can I interface the Uno using its I/O pins to speak Serial over USB? (without using a USB host shield, just cutting a USB cable and stripping its wires.) I realize that's exactly what the USB shield is designed for, but I'd prefer not to fork out the $25.

I think I found a way to control the phone without buying the USB shield. I'll wire up each button of the phone to be triggered by the Uno, using 4-bit BCD to talk to a BCD-to-decimal decoder. That way, I only use up 4 (+1 to turn on the decoder when pressing a button - otherwise, it will always be pressing the 0-key! - see truth-table) D-outs on the Uno to control up to 16 buttons on the phone. I'll wire each phone button to an output of the decoder, isolated by a solid-state relay. That way, when a decoder output goes high, it simply shorts out a button's contacts. I should be able to do it for about $10 versus $50. :)

Anyways, here's a schematic of my 4-bit BCD to hexadecimal decoder and a corresponding truth-table.