Public: Technology Reviews : Cell Phones
This page last changed on Jan 15, 2007 by stepheneb.
Cell phones can be a platform for new innovative learning applications. Here are some notes about cell phones and their application development environments.
That's hard to figure out with the wacky pricing phone companies use to sell you plans. The cheapest phones are CDMA and have QualComms BREW application environment. There's a much larger class to target that's easily defined: the ones Googles new Java email application can run on.
This application runs on J2ME-enabled cell phones (Java 2 Micro Edition, the mobile version of Java) and requires the MIDP2 profile.
Short tech background: J2ME comes in many flavors but these are defined by three layers. The lowest layer is called the configuration and on these cell phones the configuration layer is the CLDC (connected limited device profile). On top of the CLDC is a layer called the MIDP (mobile information device profile). More profiles can be added at this layer to support more powerful applications. The top layer would be the application itself. See:
FYI Sun is open-sourcing the J2ME.
Here's what Google says a phone needs to have to use mobile gmail:
- You must be using a J2ME (Java) MIDP2 phone. You can view a list of supported devices. Note: Most Verizon phones do not support MIDP2.
Note: Not all phones allow you to check for this certificate.
Here's the FAQ for mobile gmail:
It's harder to figure out what these phones cost. Google has a page listing phones they know work here:
People have also found that phones not on this list work also.
None of this is indexed by price or carrier however.
Scanning though Sprint's page of phones available in zipcode 01002 I see that these phones work (urls might not work)
Cingular has these:
These seem to be on the expensive end (the prices listed above are what you pay after signing a multi-year contract) but they are still cheaper than PDA-class phones. However the capabilities in these phones are in the sweet spot of the technology improvement curve. What I mean is that the electronics in these phones are in a similar place in the price/performance curve to the 3.3 Mpixel camera I bought 3 years ago for about $350. The same price now gets twice the capability in a camera but 3 years ago it wasn't top of the line just moderately expensive, and sitting on a curve with a considerable slope.
You can also go to this page from Sun and look for devices that have different J2ME capabilities:
Right now this seems to be the platform to target.
Can we make primitive character-graphics graphs?
Probably much better than that. Here's what I've found so far (though this appears to be only on better phones): A version of SVG graphics called TinySVG works on some phones. This is a very nice vector-based graphics format. See this page for an example of building an application with support for these graphics:
And here's a list of current phones which support these graphics:
Of course the ways these things are sold is completely backwards. What I want to do is find a phone I can use that is a phone (of course) but also lets me run the applications I want. It's very hard to search this way. This will change when the carriers realize that support for apps like Google mail will help sell service plans.
Could we capture the input sound signal, detect the frequency (by simply counting peaks, say) and graph that? Then we could use a simple V-to-f converter to interface probes to the phone.
I haven't yet been able to find out if we can get access to the sound data. Definitely pictures and movies and bluetooth (if the phone has it). I'll keep looking.
What I'm thinking about is:
The connection to the computer could be acoustic or use the mic input. Any one of several different probes could be used (thermistor, thermocouple, phototransistor, thermoelectric cooler.) The kit could be relatively simple-
How about uploading data from the cellphone to a central server? Large amounts could be sent as a phone message, small amounts as text messages. Feasible?
Not a problem with the J2ME phones (gmail does this) but the carriers can make this flat-rate, cheap, expensive, or block it all together.
How about software-only applications that addressed energy conservation? Could we program a "What if Maker", "Footprint calculator", or some simulation games?
Easy with J2ME-based phones.
Here's the summary of my research so far about application development and deployment on mobile phones along with my recommendation for a development strategy for the project work.
I recommend that we have a two-track technical development strategy. Start the project fast with development and formative evaluation of the collaborative applications and activities using SuperWaba on PDA-class mobile phones such as the Palm Treo 700p and the HP iPAQ hw6515a Pocket PC. At the same time start serious development research to determine how to redevelop the largest subset of the applications possible for media-class cell phones. This second effort is complicated by a number of factors:
For example applications for Verizon phones must be developed and certified ($$) in Qualcomm's BREW (C/C++, Python, SuperWaba, C#, and Visual BASIC, see: http://www.forum.nokia.com/main/0,6566,010_40,00.html.
Ideally we should have support from a cell phone service provider for the proposal. From my research I think the J2ME application environment would fit best with our needs. The BREW environment is less widely adopted and is associated with providers like Verizon who have very strict paths for application deployment. T-Mobile, Cingular, and Sprint provide J2ME capable phones in the US.
Phones supplied by AT&T, T-Mobile, Cingular, Sprint use J2ME. Most phones with J2ME use GSM network protocols.
These are transport and markup specifications for simple web-like technologies (http and html) optimized from mobile phones. Think of it like a browser that talks through a proxy to regular web sites. The proxy is responsible for compressing and re-creating the html into WML markup for delivery to the phone. http://en.wikipedia.org/wiki/WAP http://en.wikipedia.org/wiki/Wireless_Markup_Language http://www.javaworld.com/javaworld/javatips/jw-javatip123.html
An open standard for communication between handsets and the Internet. WAP is a wireless communications environment for delivering web data to wireless terminals with minimal screen display. An initiative started by Unwired Planet, Motorola, Nokia and Ericsson to develop a standard for wireless content delivery on the next generation of mobile communicators. WAP strips all but graphics for display on small screens, such as mobile phones. A mini-browser is an integral part of WAP enabled phones. WAP enabled phones first appeared in Europe at the end of 1999.
Here are some technologies in development which we should watch:
Hoon-Young Cho, Senior researcher, ETRI (powerpoint)
Motorola, Samsung, and others form Mobile Linux Platform Group,
The founding members of the group plan to be main force behind the initial reference design, but will encourage additional companies to become involved, as members, in the process for future releases. So far the group has not issued any sort of time line, but has expressed that they plan to eventually offer an API as well as a reference architecture and the supporting source code.
Qtopia: Qtopia is version of TrollTechs QT windowing toolkit for embedded linux systems. The development environment is free for groups releasing their applicaions under the GPL license.
Here are more general resources that I found useful:
The Rise of the Smart Phone, by Pei Zheng and Lionel M. Ni, March 2006
Mobile Phone Development, by Colin P. Fahey, 2005
Cell Phone Application Development Strategies, by Dale Crowley, Feb
|Document generated by Confluence on Jan 27, 2014 16:56|