wireless
Search EarthWeb
CodeGuru | Gamelan | Jars | Wireless | Discussions
Navigate developer.com
Architecture & Design  
Database  
Java
Languages & Tools
Microsoft & .NET
Open Source  
Project Management  
Security  
Techniques  
Voice  
Web Services  
Wireless/Mobile
XML  
Technology Jobs  

   Developer.com Webcasts:
  The Impact of Coding Standards and Code Reviews

  Project Management for the Developer

  Defining Your Own Software Development Methodology

  more Webcasts...




See the Winners!


Developer Jobs

Be a Commerce Partner
Holiday Gift Ideas
Calling Cards
Hurricane Shutters
Find Software
KVM over IP
PDA Phones & Cases
Promotional Gifts
Shop
Computer Hardware
Imprinted Gifts
Web Hosting Directory
Cell Phones
Imprinted Promotions
Rackmount LCD Monitor

 


Related Article -
The Importance of the Mobile Information Device Profile (MIDP)
WML Scripting Tips and Integration with PHP
The M-Business Evolution
Understanding The Connected Device Configuration (CDC)
What Is Bluetooth?
Developer News -
Apple's iPhone SDK Off to The Races    March 12, 2008
Sales Data, New Challengers Don't Bode Well For Moto    February 28, 2008
iPhone Grabs Market Share, But Not Yet in The Enterprise    February 6, 2008
Open Wireless Network Looms on Horizon    February 1, 2008
Free Tech Newsletter -

Best Practices for Developing a Web Site: Checklists, Tips, Strategies & More. Download Exclusive eBook Now.

What is BREW?
By Murray Bonner

First of all, BREW™ is an acronym that stands for Binary Runtime Environment for Wireless. From a software developer's perspective, Qualcomm®'s BREW can be viewed as:

  1. A set of APIs that enable developers to create software applications for wireless devices (wireless phones for now), and
  2. A means of selling and delivering applications to end-users.

On the phone itself, BREW is a thin client (about 150K) that sits between a software application and the Application Specific Integrated Circuit (ASIC) level software. Thus developers can write to BREW without knowing or caring about the device's chipset or air interface. While it's true that CDMA is Qualcomm's specialty, BREW is equally capable of running on devices that employ other air interface standards. Figure 1 shows the conceptual layering of software on a wireless device.

The second major component of BREW is the BREW Distribution System (BDS). The BDS encompasses end users' ability to shop for, purchase, download, and install software over the wireless carrier's network.

The BREW Shop lets users browse the carrier's Application Download Server to see what applications are available for purchase or trial. The entire transaction is completed over the air. The carrier generates a billing record for each purchase and a corresponding charge appears on the subscriber's monthly phone bill.

The carrier retains any retail markup and shares 20% of the application's wholesale price with Qualcomm. The remaining 80% of the wholesale price flows to the developer.

Developing BREW Applications

BREW applications can be written using Java™, C, or C++. At the 2002 BREW Developers Conference, held in early June in San Diego, IBM® and Insignia® demonstrated Java Virtual Machines for BREW. Hewlett Packard® (HP) has also ported its MicrochaiVM™ to BREW. IBM will offer a BREW development plug-in with its WebSphere Studio Device Developer™ product.

This series of articles will focus on C and C++ development for BREW, as supported by the freely available BREW SDK. Note that there are presently 3 versions of the SDK available: 1.0, 1.1, and 2.0. Each SDK version is paired with a corresponding Application Execution Environment (AEE) on the phone. Applications written using the 1.0 SDK will run on phones equipped with later versions of the AEE. The converse is not necessarily true since each successive version incorporates new capabilities.

Since the provision of BREW updates for existing phones is unlikely, maintaining compatibility with version 1.0 is advisable if you want to maximize the size of your target market. Nonetheless, versions 1.1 and, particularly, 2.0 do offer significant incremental functionality. To learn more about the differences, download the 1.0 SDK and flip through the API Reference (754 pages). Then follow the 1.1 and 2.0 "What's new" links from the download page.

While it's true that the SDK is free of charge, the developer must have at least version 6.0 of Microsoft Visual C++™ in order to develop and test applications using the BREW Emulator™ supplied with the SDK. The emulator is a Windows™ program that simulates the AEE on a phone. An application runs on the emulator as a Windows .dll. The emulator is a good tool for learning the APIs and testing an application throughout the development process. Be forewarned that there are significant differences between the emulator environment and the phone itself. Developers should incorporate actual hardware and frequent native builds early in the development process, in order to avoid convoluted debugging issues down the line.

When a developer decides to take the leap and commence commercial development, several additional costs must be incurred at various stages of the project. First of all, in order to gain access to tools fundamental to development on actual hardware, the developer must be authenticated. In essence, developer authentication involves an outlay of $400 for a Verisign Authentic Document Digital ID™, good for one year from date of purchase or the digital notarization of 100 applications, whichever comes first.

Authentication gives the developer access to the BREW Developer Extranet™ where several important tools can be accessed and/or downloaded. For example, the BREW ClassID Generator™ assures the provision of a unique, 32 bit ID for each application. The BREW TestSig Generator™ provides a digital signature that allows a developer to test an application on actual hardware. Additionally, the BREW AppLoader™ downloads applications onto phones.

Beyond authentication, there are other costs. The CPU used in BREW phones is currently an ARM7TDMI®. Since C and C++ applications run natively on the device, an ARM® compiler is required. Qualcomm presently supports ARM BREW Builder™ ($1,500), ARM Developer Suite (ADS) 1.0.1™, ADS1.1™, and possibly ADS1.2™. Given that ADS1.2 costs $5,500 for a node-locked license and $6,500 for a floating license, the $1,500 price tag for BREW Builder looks like a steal of a deal! A free, 45-day, evaluation version of ADS1.2 is available.

The developer will also need a BREW phone for testing applications. Presently only 2 models are commercially available: the Sharp® Z800™ ($399.99 from Verizon Wireless®) and the Kyocera® QCP3035e (price unavailable, though certainly less than the Z800). Note that both of these phones have version 1.0 of the AEE, thus applications targeting these devices must be developed using version 1.0 of the SDK. Three new phones, equipped with version 1.1 of the AEE and a CDMA 1x air interface, are due to hit the market as early as September 2002. Pricing information is currently unavailable. Phones with version 2.0 of the AEE are expected late in 2002 or early in 2003.

As shown by Figure 2, TRUE BREW™ certification testing, conducted by NSTL™, represents another potentially significant cost for the developer. An application must pass TRUE BREW certification before a carrier will make it available on their network. Certification aims to ensure that carriers' networks remain free of viruses and malicious or unstable applications.

Figure 2 - Application Testing Charges

Privileges Required Standard  Expedited 
Basic API functionality, file and shared directory access.$ 750.00$ 950.00
Above & data calls or Above & telephony/SMS (TAPI).1,500.001,900.00
Above & data calls & TAPI & position location.2,500.003,200.00
Functional testing required by some carriers, Add:400.00400.00

Getting to Profit

Once the developer has cleared TRUE BREW certification, a pricing plan must be negotiated with the carrier via a virtual marketplace maintained by Qualcomm. The plan involves several decisions, including the wholesale price per download as well as the type of license to grant to the end user.

Developers can choose to sell the application to end-users, charge a monthly subscription fee, or provide a free demo. When the sell option is chosen, the developer must further decide if the license is based upon a specified number of uses (an unlimited number is an option), an expiration date, a specified number of days of availability, or a fixed number of minutes of actual use. Demo options include 1-5 uses, 1-10 minutes of use, and 1-24 hours of elapsed time on the handset.

Once the developer and a carrier have agreed on a pricing plan, the carrier can make the application available to consumers by adding it to the BREW Shop catalog accessible from the handset.

Conclusion

Chipset independence, integrated distribution and billing features, and direct carrier involvement differentiate BREW from other wireless development contenders. BREW picks up where most APIs leave off - it provides a path to profit without requiring the developer to independently penetrate the "carrier barrier".

Next time: Getting Started with the BREW SDK.

About the Author

Murray Bonner is president of Golden Creek Software Inc.. The company specializes in wireless software development and is presently focused on preparing a BREW™ application for TRUE BREW™ certification.

# # #

Next article: Getting Started with the BREW™ SDK


Tools:
Add www.developer.com to your favorites
Add www.developer.com to your browser search box
IE 7 | Firefox 2.0 | Firefox 1.5.x
Receive news via our XML/RSS feed


BREW Archives

Work With InterSystems. Not Separate Systems. Rapidly develop and deploy connectable applications.
Five Trends for Application Development & Program Management. Download Complimentary Report Now.
Whitepaper: XML Processing in Applications--Take the Next Step
Flash Demo: Learn how IBM Information Server Blade is easy to manage, highly scalable and efficient.
Intel Go Parallel Portal: Translating Multicore Power into Application Performance



JupiterOnlineMedia

internet.comearthweb.comDevx.commediabistro.comGraphics.com

Search:

Jupitermedia Corporation has two divisions: Jupiterimages and JupiterOnlineMedia

Jupitermedia Corporate Info


Legal Notices, Licensing, Reprints, & Permissions, Privacy Policy.

Advertise | Newsletters | Tech Jobs | Shopping | E-mail Offers

Solutions
Whitepapers and eBooks
Microsoft Article: HyperV-The Killer Feature in WinServer ‘08
Avaya Article: How to Feed Data into the Avaya Event Processor
Microsoft Article: Install What You Need with Win Server ‘08
HP eBook: Putting the Green into IT
Whitepaper: HP Integrated Citrix XenServer for HP ProLiant Servers
Intel Go Parallel Portal: Interview with C++ Guru Herb Sutter, Part 1
Intel Go Parallel Portal: Interview with C++ Guru Herb Sutter, Part 2--The Future of Concurrency
Avaya Article: Setting Up a SIP A/S Development Environment
IBM Article: How Cool Is Your Data Center?
Microsoft Article: Managing Virtual Machines with Microsoft System Center
HP eBook: Storage Networking , Part 1
Microsoft Article: Solving Data Center Complexity with Microsoft System Center Configuration Manager 2007
MORE WHITEPAPERS, EBOOKS, AND ARTICLES
Webcasts
Intel Video: Are Multi-core Processors Here to Stay?
On-Demand Webcast: Five Virtualization Trends to Watch
HP Video: Page Cost Calculator
Intel Video: APIs for Parallel Programming
HP Webcast: Storage Is Changing Fast - Be Ready or Be Left Behind
Microsoft Silverlight Video: Creating Fading Controls with Expression Design and Expression Blend 2
MORE WEBCASTS, PODCASTS, AND VIDEOS
Downloads and eKits
Sun Download: Solaris 8 Migration Assistant
Sybase Download: SQL Anywhere Developer Edition
Red Gate Download: SQL Backup Pro and free DBA Best Practices eBook
Red Gate Download: SQL Compare Pro 6
Iron Speed Designer Application Generator
MORE DOWNLOADS, EKITS, AND FREE TRIALS
Tutorials and Demos
How-to-Article: Preparing for Hyper-Threading Technology and Dual Core Technology
eTouch PDF: Conquering the Tyranny of E-Mail and Word Processors
IBM Article: Collaborating in the High-Performance Workplace
HP Demo: StorageWorks EVA4400
Intel Featured Algorhythm: Intel Threading Building Blocks--The Pipeline Class
Microsoft How-to Article: Get Going with Silverlight and Windows Live
MORE TUTORIALS, DEMOS AND STEP-BY-STEP GUIDES