Here’s the scenario: you’re going to be traveling somewhere and you’ll be charged roaming fees if you use your cellphone. But there is free WiFi available in this place. You can save yourself money by leaving your SIM card at home and using a GSM-to-Skype bridge to take calls on your phone via WiFi.
[Trax] is using a USB GSM modem to take cellphone calls on a PC. He leaves his sim card in this modem so that it can make and receive calls and text messages through your normal telephone number. For some reason, the USB connection only provides control of this modem and doesn’t pass bi-directional audio. To make this happen, he built an audio interface cable using two transformers and a few passive components to connect the modem to the computer’s audio card.
On the software side of things, an application written in Delphi 7 manages the modem, the audio stream, and the Skype application. When a call is incoming it sets up a Skype connection with your handset via the Internet, passing along the caller ID data in the process. If you choose to answer the Skype session the application will pick up the GSM call and you’ll be connected. It works the same way when placing an outgoing call.
This seems easier to manage than a rig that physically pushes a cellphone’s buttons via the Internet.
[jayesh] wasn’t actually trying to solve any clever problems when we built his homebrew GPS tracker. He just had the hacker mentality and wanted to build something fun and useful while geeking out with electronics and software.
On the hardware side, he started with an Arduino, then added a GPS module for location detection and a GMS/GPRS module for the data uplink to his server over AT&T’s network. The Arduino uses several libraries and plenty of custom code. On the server, he worked up some wizardry with open-source packages and the Google Maps API. All of the source code and hardware details are well-documented. Put together, it’s a GPS tracker that can update a map in real-time. Sure, there are commercial products that do roughly the same thing, but where’s the fun in that? The principles here can also be put to good use in other microcontroller-based projects.
People love putting their Arduinos in interesting and remote places. while it may be possible, it may not be practical to run out and collect data from the devices. That is where this GSM / GPRS shield comes in handy.
Based around the SIMCom SIM900 that puts this device on the lower end of the price scale, (49 Euro for the module, ~60 Euro for the module mounted on a breakout board, or around 85 greenbacks) makes this module an interesting target for anyone wanting to add cell phone connectivity to a project.
To take this a step further [Boris] whipped up a nice shield PCB for the Arduino and Arduino like footprint users to make connections between the 900’s breakout board and the Arduino layout a snap. Electrically its just wires, and a LM317.
If you use the Google Maps Mobile function then the big G knows where you are even if your phone doesn’t have a GPS module in it. So the next time you want geolocation capabilities in a project consider building around GSM functionality which can also be used for Internet connectivity. That’s exactly what this module does and luckily the hard work has already been done for you.
The method really hinges on a couple of things. First of all, any GSM capable device knows the information about the cell it is currently communicating with. Secondly, Google knows the coordinates of radio towers used in the cellular mobile network. A little bit of data sniffing on Google Maps Mobile app communications confirms how and when cell information is transferred between the device and the maps server. Take a look at this series of write-ups which go into detail about hardware, software, cell network location data, and communication protocols which Google hasn’t publicly documented. Sure you’re not going to have the accuracy we’ve come to enjoy with GPS, but this can get you pretty close.
Want to listen in on cellphone calls or intercept test messages? Well that’s a violation of someone else’s privacy so shame on you! But there are black-hats who want to do just that and it may not be quite as difficult as you think. This article sums up a method of using prepaid cellphones and some decryption technology to quickly gain access to all the communications on a cellular handset. Slides for the talk given at the Chaos Communications Congress by [Karsten Nohl] and [Sylvain Munaut] are available now, but here’s the gist. They reflashed some cheap phones with custom firmware to gain access to all of the data coming over the network. By sending carefully crafted ghost messages the target user doesn’t get notified that a text has been received, but the phone is indeed communicating with the network. That traffic is used to sniff out a general location and eventually to grab the session key. That key can be used to siphon off all network communications and then decrypt them quickly by using a 1 TB rainbow table. Not an easy process, but it’s a much simpler method than we would have suspected.
[Ryan O’Hara] built a location tracker he could use on motorcycle trips. Ostensibly this is to give his wife piece of mind be we think that was an excuse to play with GPS and SMS. To stand up to the trials of the road [Ryan] took his breadboarded prototype to the next level, using a manufactured board and a SparkFun enclosure. Tucked safely away is a PIC 18F25K20 gathering longitude and latitude from a GM862, formatting the info into a Google Maps link, and sending it to the Twitter feed via an SMS message. If you’re not familiar with the GM862, in addition to being a GPS module it can send and receive cellular data on a GSM network.
This is a nice solid hardware platform from which we can envision a couple of other hacks. The feed could be parsed to make a nice map graphic like the webpage for that Twittering Road Bike. It also might be nice to have a d-pad and character LCD to post your own tweets to the feed at the end of the day.