Short text messages, like those becoming a common feature of cell phones, may be the wave of the future. Embedded command and control may never be the same.
This month I will explain how the Short Messaging Service (SMS), which originated in the mobile telephony world, may challenge the Internet as a means of getting our devices connected. But first, let's look at the unfulfilled promises of the Internet-enabled household.
The supermarket is full of food that boasts of being 98% fat free-marketers decided that we would not be capable of translating that into 2% pure fat. Are they really selling us a healthier lifestyle? Looking at the obesity figures (not to mention obese figures) of the western world suggests that they are not. What these companies do not bother to tell us on the TV commercials that show skinny models digging into a diet chocolate cake is that lowering the fat content of food increases its shelf life. And so a marketer's dream was born. They lower the fat content to resolve the companies' distribution and shelf-life issues and then tell consumers that it was all done for their benefit.
The same games are played with many Internet-enabled products. If I am selling a device and I want someone to have remote access to the device, I have the choice of providing them with some client software, or putting a web interface on the product. The fundamental motivation for using a browser-based interface is to avoid the distribution issues of the client software. It also avoids the issue of supporting multiple client platforms. The marketers then tell us that we can “connect to the device from anywhere.”
Despite a concerted effort in this area, it is still not common for an average consumer to log onto the Internet from work and check what is in the fridge at home. Apart from devices that are connected by definition, such as network routers or ISDN adapters, the cost of putting devices on the 'Net has remained prohibitive. The problem is that connecting to the Internet is affordable, but an always-on connection is not, and always-on-or at least always-listening-access is the only way that I can control my home from the outside.
Let's look at a scenario where I would realistically use some connectivity to my home. I am driving home with a frozen pizza in my car, and I know I will save time if I can turn on my oven now, so it will be pre-heated when I get home (gourmands such as myself always follow the instructions on the box). Pulling over and finding a cyber-cafe at which to log on to the web server is going to take longer than driving home. However, I have a connected device in my hand. My mobile phone can send a text message (via SMS) to my oven; perhaps something as simple as “on. 200 degrees.” Remote control of this sort involves some safety-hazards, but, in general, it is no worse than setting a timer that will turn on the oven while no one is home.
Another example is for me to send a text message to my VCR to start recording (it is not unusual for someone to discover that he is not going to make it home in time for his favorite show).
Such applications are not commonplace yet for a number of reasons. The main one is that the cost of building a cell phone into a VCR is prohibitive. It then needs its own cell number, which usually means a monthly bill. We will discuss a cheaper way of getting SMS after we take a closer look at the current SMS system.
At this point, many readers based in the U.S. are wondering what SMS is; those in the rest of the world will need no introduction. SMS is based on a GSM network that holds a small but growing portion of the U.S. cellular market, and dominates in the rest of the world. In countries where all mobiles are two-way text message enabled, the phone becomes a portable e-mail device. As I sit on a train writing this column, the girl sitting on the far side of the carriage has sent and received several messages, using the admittedly awkward numeric keypad as a keyboard. She has a date for next week, and warned her mother that the train is running late. A couple of brief beeps from other parts of the carriage tell me that other people have received short notes as well. The awkward input has spawned a whole new languag: “CUL8R” for “See you later,” and “HAND” for “Have a nice day.” Like e-mail, the value of the network is based on widespread connectivity. In most countries where GSM dominates, the carriers have agreements that allow the traffic to pass between them. In the U.S., the sheer number of carriers and a mixture of technologies makes this less manageable. Those who do have two-way messaging capability must stop and consider whether the person they want to send a message to is using the same carrier. In Europe, you simply assume that if a phone is mobile, you can send it a text message.
About 20 billion SMS messages are sent worldwide every month. Phone companies charge about 10 cents per message. A billion messages here, a billion messages there, and pretty soon you are talking real money. This represents a lot of revenue to the phone companies (and boy do they need it, after all the money they spent on very dubious 3G licenses). The fact that it is such a money-spinner is exactly why it is going to become more widely available in the U.S. In Europe, it is already a huge part of teen culture. If you walk into a crowded, noisy pub in Dublin, you will always see people tapping at the numeric keypad, constructing abbreviated messages, and trying to locate their friends, who are often in a pub down the road, where it is too noisy to talk on the phone.
So what has teenage social life got to do with the home appliances that I discussed at the beginning of this piece? Well, they subsidize an infrastructure we can use. SMS-enabled home appliances would never deliver enough traffic to justify the SMS infrastructure, but as long as the infrastructure already exists, embedded device designers can take advantage of it.
From a technical point of view, this kind of communication is fairly straightforward. If you have GSM coverage, you can buy a GSM wireless modem, and such modems support a variation of the Hayes command set that allows you to send and receive messages containing up to 160 characters of text data. You now have a point-to-point data connection without requiring an ISP and, more importantly, you can receive SMS messages without an always-on Internet connection. In fact, the device does not even need to be turned on when the message is available. The phone network provides a store and forward connection. This is e-mail for phones. If you are not there when the network tries to deliver the message, the message will be stored until the network discovers that you have been turned on (or regained coverage).
Wired vs. wireless
I still have not said anything exciting here. The technology I am describing has been available for years, but the remote-control VCR has not materialized. The cost of making a home appliance capable of communicating wirelessly over SMS exceeds the cost of an Internet connection over a landline. We have the infrastructure, but the cost of the connection, per unit, is way too high.
This is where SMS over land lines will make life interesting. Currently, only a few countries support this protocol, but it is spreading. It will continue to spread because the phone companies are intoxicated by the amount of revenue they see in mobile SMS traffic. If they can increase that revenue by a few percent it will be worth the investment in switch infrastructure to make land-lines capable of sending and receiving SMS. I presume that a big slice of the market would be SMS mobile-to-land line and vice versa. Italy was the first country to offer this service, and at least one major land-line phone manufacturer expects that 80% of the phones manufactured in three years time will be SMS capable.
SMS over a land line requires simpler technology than SMS over a mobile. V.23 modems, which cost pennies, are used for caller-id applications, and are already built into many phones. Upgrading such phones to handle SMS would only require a software enhancement. If the telephone switch is already capable of delivering caller-id information to the phone, then it is only a software upgrade there too. Both changes will involve a large lead time because phone companies do not upgrade their telephone switch software often, and it will take a while for SMS-capable handsets to filter through the consumer market. But it will happen; telecom companies have historically pushed features that can increase network traffic and, thereby, increase revenue. The telecom companies push the phone manufacturers to comply with the features that benefit the telecom company, and the phone manufacturers comply happily; many of their phones are sold by the retail channels of the telecom companies themselves. While a number of companies have to cooperate to make all this happen, it is in the interest of all involved to put this infrastructure into place.
As designers of embedded devices, we can take advantage of this infrastructure by installing a V.23 modem in our products. The product does not need to be capable of making a phone call, or logging into an ISP. A dedicated phone line is not necessary either. If the device shares the same line as the rest of the house, it can send out information whenever the phone is not in use. The device can eavesdrop on all incoming SMS messages and decide which ones require action, based on the format of the message or the caller-id.
This does not just enable people to interact with devices from their phones. It also makes it possible for devices to communicate with a central server, or with each other. If a vending machine wants to report that it is empty, it only needs to get a few bytes of data to the supplier's central server. Home alarm systems typically make an ordinary phone call to report an intrusion, and use a low speed modem to pass on a few bytes of information, such as a customer identification number and the type of alarm. The alarm monitoring office must have enough lines to ensure that no call is missed. SMS would require the same hardware on the alarm device (a V.23 modem,) but because SMS uses store and forward, newer messages are simply queued by the phone company if the central server is overloaded. This relieves the central server from having to buy enough phone lines to make sure that no incoming call is ever missed.
If a device needs to report only a small amount of data, such as a supermarket freezer that needs to occasionally report temperature data, a central server could send an occasional SMS query; a reply SMS would contain the data. Software packages that allow SMS to be sent and received from a normal PC are already available. Some of them require a mobile phone or GSM modem to be connected to the PC, while others connect to a gateway over the Internet. There is a standard protocol for passing SMS messages over TCP/IP. The Short Message Peer-to-Peer (SMPP) protocol allows servers on the Internet to send SMS messages in volume without having to worry about the details of the phone network. Many GSM networks allow SMPP access for a nominal fee for mobile networks at present. As the fixed line SMS network spreads, the SMPP protocol will hide differences between fixed line and mobile originated SMS message. This means you can deploy a combination of wired and wireless devices, but the central server communicates with both in exactly the same way.
One of the biggest unsolved problem is how to protect ourselves from accessing our devices. Caller-id is one means to limit the incoming messages to the caller. Unfortunately, caller-id is spoofable. For example, many PABX systems allow you to program in the outgoing caller-id. So when a person is sending the SMS, this technology is only applicable to non-critical applications. Caller-id will prevent accidentally turning on your neighbor's oven by dialing the wrong number, but it will not prevent the determined hacker.
Secure applications will require a layer on top of SMS. The node that receives the first message will have to reply to confirm that the caller-id is valid. This will not be too difficult to implement, but will cost a little as a couple of messages are exchanged to say “I am who I say I am.” (SMS has always been charged per message.) This exchange will not create any usability difficulties when devices are communicating with each other, but it would probably be too cumbersome if one side of the SMS conversation is human.
Embedded devices often have simple commands and simple queries. A full-blown Internet connection can be overkill for the amount of data required. Also, a dial-out connection is not suitable for incoming traffic. If you want to provide a graphical user interface, a client program on the PC can do its communication via SMS and then present the raw data in a user-friendly format-perhaps graphing those temperatures over time.
The SMS solution is not particularly cost effective in the mobile world, but once a cheaper fixed-line SMS infrastructure takes hold, many embedded designers will be able to take advantage of it, and thereby connect a big family of devices that could not afford connectivity before.
Niall Murphy has been writing software for user interfaces and medical systems for ten years. He is the author of Front Panel: Designing Software for Embedded User Interfaces. Murphy's training and consulting business is based in Galway, Ireland. He welcomes feedback and can be reached at . Reader feedback to this column can be found at .