Chapter 7. The Wireless Landscape

Using mobile phones to gab with friends is mighty cool—and convenient. Wireless telephony is so easy and routine these days that most of us take for granted the fact that we can carry worldwide communications gizmos in our hip pockets. But there are other uses for wireless devices—stuff that has the potential to make the cool even cooler. These enhancements are the stuff of science fiction, with vast implications for gaming and entertainment. Some of these enhancements are available today, some coming soon.

While the standards and protocols used in the wireless world are in constant flux, there are several that look like they're here to stay. These include the following:

  • Bluetooth—A short-range wireless protocol that can turn the world into a vast high-speed data network.

  • Mobile positioning—A set of technologies that can pinpoint exactly where in the physical world somebody is located.

  • Mobile commerce (m-commerce)—Various technologies that make charging or transferring money quick and easy.

  • Voice activation—Mixing voice with data in voice portals, or using one's voice as a navigation interface.

Bluetooth

URL: http://www.bluetooth.com/

The colorfully-named Bluetooth is simply a standard for transmitting data using short-range radio waves and low power. The radius that Bluetooth can operate within is about 33 feet (10 meters). Radio waves can pierce most walls, and there's no requirement for two devices to be within line-of-sight of each other.

There are millions of possible uses for Bluetooth:

  • Computers, PDAs, mobile phones, and other devices can constantly be talking to each other, synching address books and e-mail addresses. There's no need to place devices in cradles or point infrared ports in the right direction.

  • Business folk can walk around a convention center and automatically collect a phoneful of business cards and even product brochures.

  • A digital video or still camera can take photos or movies, sending them to the nearest mobile phone. The phone can then slowly transfer the images to a remote server.

  • A laptop or mobile phone can zap documents to a nearby printer without any cables or hook-ups.

  • A person can bounce between different offices around the world and instantly use her mobile phone, laptop, or PDA to tap into the company's network, accessing data and services.

  • Stores can create incentives that “flash” advertisements or coupons to people's cell phones as they walk past.

  • A phone can become a Personal Trusted Device (PTD), which is kind of like a wireless extension of you and your wallet. You can use your mobile phone to gain access to your home, office, or top-secret cryogenic research laboratory. You can also use your phone to make purchases without swiping a credit card or signing a slip.

  • A bunch of people in the same vicinity can play a high-speed multiplayer game, with quick reaction times and trigger-finger reflexes.

A Bluetooth device sends data in the 2.4GHz band, at a data rate of about 1MB per second. Compare that to today's second-generation wireless networks, which are lucky if they can reach 14.4 kilobytes per second. Even when third generation networks become prominent, local network technologies similar to Bluetooth will always be faster than cell-based communications.

Nokia, Ericsson, Motorola, and most other mobile device manufactures have begun releasing Bluetooth-enabled devices. Development kits for these devices are usually available on the manufacturer's Web sites.

NOTE

Bluetooth's name, by the way, comes from a 10th century Viking king named Harald Bluetooth. The protocol is named after him partially because he has a weird name, but also because he was a big believer in bringing different nations together. He helped unite Denmark and Norway.

Bluetooth Protocols

The current Bluetooth specification is huge and very complicated. However, there are three major protocols defined; knowing about them might help you understand Bluetooth's various uses. The three protocols are as follows:

  • RFCOMM—Allows basic stream connection between two devices.

  • OBEX—Object-oriented exchanges. Establishes a standard way for hierarchical files, contacts, or calendar information to be synchronized and transferred.

  • Service Discovery Protocol—A sniffing service that lets Bluetooth devices find one another and register various services.

Bluetooth and Java

URL: http://jcp.org/jsr/detail/82.jsp

WAP or J2ME data can easily ride over a Bluetooth transmission stream. For example, a WAP browser should be able to grab a WML page or image from a nearby server using Bluetooth instead of HTTP.

There is currently a specification in the works to create a standard set of Java APIs for Bluetooth. The hope is to create an API based on the Generic Connection Framework defined in the CLDC. We will discuss the Connection Framework in later chapters.

Other Short-Range Applications

There are a number of other protocols and methods of having a mobile phone communicate with nearby devices. Many phones already have infrared ports, capable of beaming data to laptops, Palms, and so on. An infrared beam's range, however, can reach only a few feet at most. And infrared ports must be in direct line-of-sight.

The i-mode service, for instance, has run trials of a service called Cmode. According to an NTT DoCoMo press release, the 'C' stands for “Coca-Cola, culture, and communication.” Cmode permits the phone to act as a payment and control device. Point your phone at a Coke machine, hit a special code, and a can of your chosen drink pops out. The charge for your soft drink will show up on next month's mobile bill. You can also earn incentive points with every purchase, which can be cashed in for free drinks or other prizes.

Additionally, some vending machines are already able to send wireless messages to vendors when they are empty or in need of repair.

Other uses for short-range communications include the capability to control your home's lights, doors, or heating. One could even unlock one's car using a cell phone.

Broadband's Promise

In the gaming world, companies are looking at short-range transmissions to give small devices the power of powerful game servers. For example, complex game software rendering or physics routines can run on a strong processor, and the results can be streamed down to the handset.

Eventually, wireless Local Area Network (W-LAN) and other solutions will permit data to be transferred to and from wireless phones at true broadband speeds.

Mobile Positioning

One of the most useful, most exciting, and spookiest wireless enhancements is mobile positioning. Because many people carry mobile phones with them all the time, it can be said that a person is their phone. And a phone's location pinpoints exactly where a person is, and where they've been.

Although positioning has a lot of potential for abuse, with the right privacy controls it can become a wonderful thing. Not only can positioning save lives by helping police cruisers, ambulances, and fire trucks find the source of an emergency call, but there are countless business, entertainment, and game-specific applications.

Positioning, in fact, has the potential to mix the palpable joys of humans meeting each other in real life with the fantastic and organizational elements of a digital medium. With exact mobile positioning, games can begin to play people, rather than vice versa.

How It All Works

This field of mobile technology is known as Location Based Services (LBS). There are several components to any location system:

  • Geographic Information Systems (GIS)—This is the map itself, along with tools that can bring map data down to the handset. Various systems can handle road maps (with streets, buildings, landmarks, gas stations, restaurants, bars, and so on) as well as topographical maps (mountains, rivers, forests, and so on).

  • Location Management—This piece of software acts as a translator between the positioning equipment and the network servers that help use the location coordinates in a useful way.

Some of the major categories of Location Based Services include the following:

  • Tracking—Entire fleets of trucks, boats, soldiers, or gamers can be tracked. Users can also subscribe to various m-commerce applications that track the user's whereabouts throughout a city and notify a person when he walks near a store that is offering a sale on a product that the person desires.

  • Emergency—When a user dials an emergency number, the authorities will know exactly from where the call has been issued. The Federal Communications Commission (FCC) has asked all United States wireless carriers to provide accurate location information when users dial 911.

  • Billing—By knowing where you are, your phone can figure out the cheapest or fastest carrier based on your area and use that network for all its traffic.

  • Location Based Information—The most useful for games. By knowing a user's location, all sorts of funky things can happen within the game universe. Other typical applications include city guides, which can figure out where you are and show you the closest movie theaters, restaurants, or clubs.

Forums and Associations

Ericsson, Motorola, and Nokia founded the Location Interoperability Forum (LIF) to create a standard way of developing location-based services on networks and handsets across the world. More information can be found at http://www.locationforum.org/.

Another association called the Wireless Location Industry Association (WLIA) has also been formed. The association was formed to provide hardware, software, and services related to positioning. More info can be found at http://www.wliaonline.com/.

Additionally, the 3rd Generation Partnership Program (3GPP) is also working to standardize positioning systems for GPRS and WCDMA networks.

Ultimately, there are and will be many standards and many ways of positioning. Although it's useful to understand these technologies, most manufacturers will release a simple API enabling developers to easily locate and track users using basic commands.

It's already possible to develop positioning applications using existing APIs. For example, Ericsson's Mobile Positioning System (MPS) is a toolkit that provides such an API. The libraries are available in a number of languages, including Java. As a developer, you just need to write your application according to the API. The positioning will work no matter whether the user is on GSM, TDMA, or UMTS networks.

More information about Ericsson's MPS is available at http://www.ericsson.com/mps/.

Privacy

Every provider will handle privacy in different ways. In general, though, most mobile positioning services will offer several layers of security:

  • Only accepted and legitimate service providers can log on to the positioning system's servers.

  • In order to request a specific user's location, the user must have explicitly given the service provider permission to do so.

  • Mobile subscribers can turn off the capability to be located altogether, whenever desired.

Positioning Technologies

There are many different types of positioning. Different technologies provide various degrees of accuracy, standardization, time it takes to refresh a new position, latency to retrieve position details, and widespread acceptance.

The two main categories are as follows:

  • Network-based solutions—This solution relies on using existing wireless networks, triangulating the signal that reaches the various cell towers serving a particular mobile phone. This can usually pinpoint the closest tower or antenna. The big advantage here is that special software and hardware isn't needed within each handset. See Figure 7.1 for an illustration. Some of these solutions include TDOA and AOA.

    Network-based positioning.

    Figure 7.1. Network-based positioning.

  • Terminal-or handset-based solutions—This set of solutions tries to figure out exactly where a mobile phone is in the real world by calculating the direction and intensity of the signal that is coming down to the phone. See Figure 7.2 for an illustration. GPS is the most well-known terminal-based solution. Terminal-based solutions are usually the most accurate. The big disadvantage, however, is that the terminal usually must have special chips or other equipment built in.

    Terminal-based positioning.

    Figure 7.2. Terminal-based positioning.

Global Positioning System (GPS)

The most popular form of positioning is the Global Positioning System (GPS), often used by sailors, hikers, and truckers. A GPS device can receive a repeating signal from three or four satellites around the globe. By knowing which satellites the signals are coming from, and how long it takes for the signal to reach the device, it is possible to figure out where on earth the device is. The accuracy is pretty good, ranging from 5 to 40 meters.

NOTE

Note that the raw satellite information is often sent to the wireless network for the heavy processing.

Assisted GPS (A-GPS) and Differential GPS (DGPS)

Assisted GPS (A-GPS) uses special network equipment to help figure out where the mobile device is. Basically, an additional static GPS receiver is placed every few hundred miles. This receiver's “assistance data” can be sent to nearby phones every so often, complementing information received by the phone's own GPS receiver.

A similar system is known as differential GPS (DGPS). In DGPS, the static receiver knows exactly where it is, and thus can grab info from various satellites, measuring any timing discrepancies. The static receiver gives this error information to the roving receiver (the mobile phone). This way, discrepancies can be accounted for. This makes DGPS much more accurate.

Hybrid solutions like this are much faster than GPS alone, and can work even when a phone is unable to reach enough GPS satellites.

GSM Location Positioning

GSM Location Positioning is available on GSM networks. The technology is very similar to GPS, using a combination of the Internet, cellular networks, and GPS satellites to triangulate a user's position. Ericsson, SnapTrack, and CellPoint are some of the companies working on GSM positioning systems. SnapTrack's Wireless Assisted GPS service has tested with a supposed accuracy of 5–10 meters, depending on how densely packed an area is.

Unlike GPS, GSM positioning enables users to be found while they're in dense cities, buildings, parking garages, or anywhere else mobile phone service works. Users can even keep their phones in their briefcases, pockets, or luggage.

Time Difference of Arrival

The Time Difference of Arrival (TDOA) method involves special software or equipment to be installed on every transmission tower on a cellular network. Basically, each cellular tower times how long it takes for the signals from a mobile phone to reach it. By calculating how far a handset is from various towers, and by knowing the GPS location of each tower, the rough position of a handset can be determined. At least three base stations need to be able to receive signals from the phone in order for this method to work.

Angle of Arrival

The Angle of Arrival (AOA) method is similar to TDOA, except it analyzes the angle of each signal instead of the time. Because the angle of a handset's signal is known, the network can figure out which direction the signal is coming from. When combined with TDOA, relatively precise positions are possible.

Enhanced Observed Time Differential

Enhanced Observed Time Differential (E-OTD) is similar to TDOA, but in reverse. Rather than the network timing each signal, the handset does the timing and calculates where in the world it is relative to surrounding towers.

New phones will need to be designed to handle E-OTD, but by putting the power of positioning in the phone many privacy concerns can be handled. The accuracy is expected to be within about 125 meters.

Radio Propagation

This clever method maps the radio frequency (RF) characteristics across an entire area. By analyzing a given handset's RF signal, it is possible to roughly estimate the device's position.

m-Commerce

Mobile electronic commerce, also known as m-commerce, is an emerging and wide-ranging field. Commerce plays many roles in the wireless world. Just some of the angles include charging for telecommunications services, collecting money, and using mobile phones to tap into other stores, or banks.

Phone service plans break down into two wide categories:

  • Prepaid—Before any call is made or wireless service is used, the user's account is checked and the appropriate amount is deducted as the phone is being used. Users who prepay can be thought of as customers, and users might often jump from one prepaid service or application to another.

  • Postpaid—The mobile carrier keeps a detailed record of every call made or packet of data that passes through the handset. A detailed invoice is sent to the user at the end of each month. Postpaid users can be thought of as subscribers, because much of their data is known by the provider of the given content or service.

There are many intricate steps involved, including a call detail record (CDR), a rating engine to figure out how much each call should cost, and a routing routine to figure out which plan a user is using.

Packet networks such as GPRS must not only keep track of each minute of voice use, but also measure the amount of data being sent and received. There might also be additional charges for premium services or content.

Things get even more complicated as a user roams from one network to another. Carriers must settle accounts with each other, and exchange CDR data. Generally, third-party clearinghouses will help keep track of all this.

From a game developer's perspective, much of this shouldn't matter. A good game is a good game is a good game. But some games that have high numbers of data packets exchanged, or games that take a long time to play might cost the user more money than she is willing to spend. It is important for any game designer to understand the target business model and gear the game's life cycle and data transfer accordingly.

Charging for Content

Today, most e-commerce companies that support wireless data charge for services or content the same way they do over the Web—by collecting credit card information. While typing in a credit card number isn't that hard to do on the Web, it becomes much more difficult and time-consuming to do over a mobile phone.

Some m-commerce interfaces are quick and easy, but they still require lots of additional work from the user's perspective. For example, Amazon.com has a nifty WAP interface that only requires a click or two to buy books, as long as you've previously set up your account and credit card number online.

NTT DoCoMo and many other carriers see the power in avoiding credit cards. Their goal is to become like mini-banks themselves and automatically and easily charge fees for content or services with the click of one button. These companies will then send a bill to the user.

Micro Java and Money

Additionally, most mobile carriers now offer a profit sharing program for Micro Java developers. In the United States for example, Motorola and Nextel offer a comprehensive developer partnership. You can list your application on the iDEN Update Web site at http://commerce.motorola.com/nextel/main/, and charge any amount you want. Nextel and Motorola will split the proceeds with you.

The process works as follows:

  1. You join the Motorola and Nextel developer program. Visit http://developer.nextel.com/ for more information.

  2. You create your game or entertainment MIDlet, and test it as much as possible using emulators and your own Motorola phone.

  3. Nextel puts your application through a comprehensive review and testing process, to be sure it causes no harm to the phone.

  4. If all goes well, your app gets added to the iDEN Update site and users around the world can begin to access it. Users may plug their phones into their computers and use their credit card to pay for additional applications. Additionally, Nextel now enables users to quickly and easily download Java apps over-the-air. The charge for apps will conveniently appear on the player's next bill.

Most other wireless carriers will likely support similar commerce models.

Voice and Telephony

One thing about mobile phones will probably never change: They will likely never become more like computers than like telephones. People still love the ease of talking into a device and quickly communicating with others. In industrialized nations, telephones are an integral part of most people's lives. They require almost no interface, no special skills, and little effort—a person need only remember her receiver's phone number.

As such, voice-recognition, voice-to-text, and text-to-voice technologies are being heavily researched. There are already many voice portal companies that can take your voice commands and read you your e-mail, tell you the details on one of your phone book entries, or let you know what appointments you have in today's calendar.

VoiceXML

URL: http://www.voicexml.org/

VoiceXML is a language that helps content providers create trees of voice menus that can be triggered as users say certain words or phrases. The language is controlled by the VoiceXML forum and is based on Extensible Markup Language (XML).

A VoiceXML system basically acts according to the following procedure:

  1. A user calls a VoiceXML server. A default VoiceXML page is loaded. This page has certain commands. Typically, a menu of typical options is read to the user.

  2. The server will then wait for a response. The user speaks her mind.

  3. The server translates the request and retrieves a relevant VoiceXML page. The page can be stored on any Web server across the world. The page might contain another menu of options, or might be a dynamically-created chunk of text that can then be read to the user.

VoiceXML Software

There are a number of digitized speech applications and libraries that already use VoiceXML. Some examples

  • VoiceClient—An e-mail solution that uses VoiceXML to read out mail messages. You can plug in any text-to-speech engine you desire. More information can be found at http://www.voiceclient.com/.

  • Voice Genie—A VoiceXML browser and server. Learn more at http://www.voicegenie.com/.

Wireless Telephony Application Interface (WTAI)

URL: http://www.wapforum.org/what/technical.htm

The WTAI set of tools will enable a WAP developer to add all sorts of telephony features to a WML page. Many of the latest WAP implementations support WTAI.

For example, you could create a WML link that enables users to

  • Dial a number and make a call directly from the browser

  • Add to or edit the device's phone book

  • Automatically send dial tones during a voice call

In the near future, it is reasonable to expect that the WTAI telephony functions will be available on many J2ME implementations. This will enable Java developers to use functions. For example, to make a call

WTACall call = WTAPublic.makeCall("5551234");

or to add a name to a phone book

WTAPublic.addPBEntry("5551234", "Harry Bigby");

Unified Messaging (UM)

The notion of unified messaging is quite simple: People should be able to use any device to access and receive voice calls, voice-mails, video calls, faxes, e-mails, or any other type of communications. Instead of different accounts, phone numbers, and machines, the promise of unified messaging is to have all communications in synch and retrievable from computers, television sets, or mobile phones.

For example, a user could set up a UM system to issue forth an SMS message whenever a new e-mail is received. The UM system might then use text-to-speech technology to read the e-mail to the user over her handset.

Location-based services could help automatically determine where a user is and gear his messaging preferences automatically. For example, if a person is in a meeting room, then the system could be smart enough to hold all calls and route them to voice-mail.

In the world of games, UM offers a similar promise. A big game could have interfaces from set-top game consoles, voice activation over mobile phones, or data viewing through J2ME.

Summary

Clearly, mobile phones are on the way to becoming as powerful as today's desktop PCs. The next generation of mobile devices already resembles some of today's top PDAs. Many companies looking to develop for tomorrow's mobile handsets are focusing on PalmOS devices and PocketPC computers, such as the Compaq iPaq. For example, the Norwegian company Fathammer is creating some software called X-Forge. This software is a tiny but complete 3D library that will enable game developers to render rich, beautiful, 3D worlds on mobile devices.

Micro Java will help code achieve portability between tomorrow's wide range of devices. A basic Java game that works on today's simple handsets can easily be expanded with better multimedia and network access for future devices.

You've been patient enough! In then next section, we will finally begin to look at how to make games using J2ME.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.129.42.243