A new Kickstarter project aims to provide a low-cost, open source platform for building a GPS tracking device. The author, Wayne Truchsess of DSS Circuits, explains that a few years back, his brother in law had a PS3 stolen during a long power outage in the depths of winter. Not wanting to repeat history, Wayne bought a fake PS3 case on eBay and developed his own prototype position tracker to put inside it.
The tracker consists of a GSM cellular modem, a GPS unit, and an accelerometer, all tied to an Arduino and a LiPo battery to provide brains and power, respectively. Normally, the device lies in wait, asleep to save power. If it detects motion, it turns on the modem and alerts a preconfigured phone number via SMS. The owner can then respond with various commands to turn position tracking on or put the device back to sleep.
HC Gilje has posted an excellent guide to serial communications with external devices using the iPhone. There are lots of resources out there for setting up serial devices, but the landscape is fragmented. And as always, Apple is not exactly falling all over themselves to let you hook up peripherals. As Gilje succinctly puts it:
Apple has not made it easy to let the iphone communicate with external devices. Basically, you need a jailbroken phone to do anything.
Building on our theme of cellular hackery, Dave has a three part series on his blog dedicated to the creation of a remote start system for his car. What’s the catch, you say? Oh, no catch, no catch at all… except that he wired his remote start to work via cellphone input, so he can give his whip a call before he leaves work and climb into a warm car immediately upon arrival at the parking lot.
Compton the official Arduino labs, the GPRS/GSM shield and associated library have been developed for your communications pleasure. There is a lot of scattered work out there on cellular communications, but this project was developed by a three-person team that includes two Arduino co-founders, so you know you’re getting a level of professionalism. Like some of our other cellular posts, the library relies on standard AT commands, so you may be able to adapt it to a range of other hardware. Check out their detailed documentation and see if it will work for your project.
Oleg has written up a project detailing how to get your Arduino talking to an inexpensive USB cell modem (~$25 from DealExtreme, among other retailers). It’s based on a BenQ M23 GSM/GPRS wireless module and uses a standard AT command set.
This is the cheapest we’ve seen for a plug-and-play cellular solution, so it’s definitely a good resource. His site walks you through the setup process and provides example code plus a complete library, so if you’re looking to do something similar, check it out.
The SIMCom SIM900 GSM module isn’t very well documented (in English, at least), but it is dirt cheap. If you fancy putting cellular communications in your Arduino project, there are a few intrepid pioneers that have paved the way.
Seeedstudio sells a GSM/GPRS shield utilizing the SIM900, and have a well-developed wiki page with getting started tips, a walkthrough, and plenty of sample code.
If you’re looking for more of a drop-in solution, Open Electronics has a library to talk to a similar shield with the same SIM900 module. It’s unclear if that particular shield is still for sale, but the library should be adaptable to Seeedstudio’s version or others without too much work.
If you’re looking to make your Arduino talk with the outside world, you have lots of options. A cellular modem can give you the most flexibility in terms of where and how you can send messages or transfer data. Cell modems can be finicky and difficult to work with, but some are easier than others.
Although the Telit GM-862 has been superseded by other modules in Telit’s GSM lineup, it’s still relatively easy to find, easy to work with, and inexpensive. Alexander Weber’s description of how to connect a GM-862 to the Arduino’s serial bus and his sample library code are largely applicable to many cell modems. Most units still utilize some form the ancient Hayes AT command set, so the commands used in Alexander’s project can be adapted elsewhere with little modification.