Hardware

This page lists various modules which could be used in a Homebrew Mobile Phone. NOTE: Some of these items may be hard to source in small quantities. See Suppliers for a list of goodies you can get hold of.

Price / Volume Calculations
Most suppliers offer discounts for customers buying large quantities. Here are a few Google Spreadsheets that show the volume discounts for various products listed here. The objective was to calculate the price of a "reasonably fast mobile Linux terminal with a touchscreen. GSM voice and GPRS data capabilities." All calculations are based on prices and volume discounts published on the company's web sites.

GumStix Verdex XL6P + the Goliath Daughterboard
The following spreadsheet shows the volume discount for a GumStix XL6P based "mobile terminal" with the Goliath daughterboard. Pricing info for the Goliath is an estimate; it was announced in the summer of '07, but its release has been delayed, so exact pricing info was not available at the time this document was constructed (12/6/2007). Volume Discount info came from the Verdex Volume Pricing Page.

GumStix Verdex Based System w/ Goliath and LCD (Google Spreadsheet)

Compulab EM-X270
This spreadsheet is based on the Compulab EM-X270 Embedded Mobile Device. Pricing and volume discount info came from Compulab's web site. It's probably important to note that the Compulab EM-X270 is not exactly comparable to the Goliath based system. The Compulab device, though more expensive, is configured with a Li-Polymer battery, more flash memory, a higher resolution LCD screen, Bluetooth and WiFi interfaces. It is, however, slightly slower than the GumStix system listed above (the Verdex system listed above is a 600MHz part, while the EM-X270 is running at 520MHz)

Compulab EM-X270 with LCD and battery (Google Spreadsheet)

Compulab EM-X270
The [Compulab EM-X270] is a mostly complete module with Application Processor, GPRS Module (Telit GE864), GPS (NAVMAN Jupiter 32 - Sirf-III Chipset), WLAN, Bluetooth, Battery and LCD (TPO/Philips TD035STEE1 3.5inch 640 x 480 touchscreen LCD with 65k colors ).

Application Processor Module
Typically, The application processor, the heart of the phone is housed in it's own module along with some flash memory and some RAM. The choice of application processor is critical for a homebrew design as it dictates not just the processing power of the device, but also of the additional peripherals you can attach to it such as wifi modules & audio codecs. Companies who make add-on modules for their Application Processor Modules (i.e. Gumstix) are ideal as they have done a lot of the hard (& expensive) work of designing PCBs etc. A more complete list is available at LinuxDevices. Also, we have a few benchmarks for several of the processors listed below on the Application Processor Benchmarks page.

Intel/Marvell PXA255
The almost famous Intel XScale processor, found in many devices. The Entire XScale line was sold to Marvell in 2006, who support the PXA255.


 * Gumstix: The original Gumstix computers are based on the PXA255. They have 4 or 16MB of flash and 64MB of RAM. There are many interesting interfacing possibilities via add-on boards.

Intel/Marvell PXA27x

 * Gumstix GS270 (aka Verdex): The next-generation Gumstix module sports a PXA270 processor. These became available in early April 2007 and sport the standard 60-pin connector found on earlier gumstix boards, plus a new 120-pin expansion connector. At the time of writing (April 2007), there were no 120-pin expansion boards available.


 * Compulab CM-X270: A neat little board wich a 520Mhz PXA270 with 16-128MB RAM, 128-512MB flash, 802.11b Wifi, 100Mbs Ethernet and optionally includes an Intel 2700G 3D graphics processor! They are $142.50 in single units, but have a price break at 10, 100, etc quantities. A PC/104 break-out board is also avaliable (a nessesary add-on really!) for $135 in single-unit quantities.


 * Balloon-Board 3: An open hardware project, derived from the LART project. This board combines a CPLD or FPGA with a PXA270 along with 128MB Ram, 32MB NOR flash and all the usual PXA270 features. An interesting project although perhaps a little bulky for a phone.


 * Colibria PXA270: Another PXA270 based System-on-Module running at 312Mhz or 520Mhz. The board comes in SODIMM form factor and has 64MB RAM and 32MB Flash on board. Pricing is set at €99 (€119 for the 520Mhz version) in single unit quantities. A break-out board and Linux BSP is available for the module.

Marvell PXA3x0

 * TRITON 320 : One of the first PXA320 modules, this device is available in DIMM200 form factor. It boasts a 806Mhz PXA320 processor with 64MB DDR RAM and 128MB of flash memory. While the modules themselves are reasonably priced, the development kit they plug into is very expensive. Available at Direct Insight from ~15th March 2007.


 * Corlibri PXA320: This module is avaliable in an SO-DIMM form factor and comes with a development board for €439 and is avaliable now. The module features an 806Mhz PXA320 with 64MB DDR RAM, 32MB flash and 100Mbs Ethernet.

Freescale i.MX21
Info at http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX21&webpageId=M0ylsZrDR


 * VCMX212 : This is a modular/stackable SBC based around the i.MX21 (only 50x44mm). Talking to them, they seem like they will have a GSM module accessory board available for it soon.  Also, looking at their wiki, it appears they already have a board designed for interfacing to the PSP LCD as part of their portable gaming platform (looks easy enough to port over to this project).

Freescale i.MX31
Info at http://www.freescale.com/webapp/sps/site/overview.jsp?nodeId=0162468rH31143297336425774
 * iMX31 LITEKIT : While on the large side for a phone (59mm x 76mm), this is the best bet for i.MX31 development. It has an i.MX31 processor at 532 Mhz, 64MB/128MB DDR RAM and 64 MB flash (+2MB boot flash). The Linux BSP is a bit ropey at the moment, but should improve over the next few months.


 * Open Microprocessor Module : This is the SVHMPC's own design for a processor module. It's still in early stages of development but should be an excellent device.


 * Garz & Fricke's ADELAIDE : A credit card sized (54x85.5mm) SBC with 32-128MB of DDR RAM, 8MB of NOR boot flash and a massive 1GB of NAND flash for applications etc. The board also includes an audio companion processor and 100Mbs Ethernet. Boards are €139 in single unit quantities and the development kit is €699.

Atmel AVR32
Ray has been talking about using Atmel's AVR32 system for a phone project. The marketing tag-line for this series of processors is: "More MIPS, less mA." Of course, that's the marketing spin; I can't say that I have any objective data that an AVR32 based system will give you more MIPS per mW, but if it did, it's worthy of consideration. Atmel sells the STK1000 development board for $499. Persons on a budget may want to take a look at the AVR32 Gateway evaluation board. It's a bare-bones dev board with USB, JTAG and dual ethernet connectors (and there's a Linux BSP available for download).

Cellular Wireless Modules
There are a _lot_ of different standards for cellular networks out there. They generally fall under 4 different "Generation". Wikipedia has some useful information about this: GSM Use the selector on the right-hand-side to view information about a particular generation.

Generally, each generation has a different set of frequency bands which they use, however these bands are not universal across the world with some conuntries usings one band and a different country using another. E.g. While a GSM/GPRS phone is always a GSM/GPRS phone, there are 4 different bands which are used across the world.

2.5G (GSM & GPRS)
These days 2.5-generation modules are the entry point. They have GSM for voice & SMS and GPRS for data. There are different classes of device which dictate how the GSM & GPRS functionality inter-operate. For more information, try Wikipedia's GPRS classes.


 * Telit GE863 : A Class 10, Quad-band GSM/GPRS Module. Also features an integrated GPS module. Availability: Main_Page


 * TelitGM862 : Quad-band GSM/GPRS Module. Also avaliable with a Python interpreter! Availability: Main_Page


 * Telit GM862-GPS : Same as GM862 but with an integrated GPS module. Availability: Main_Page

2.75G (EDGE)
2.75G adds higher speeds to GPRS using a technology called EDGE.


 * Siemens MC75 : Class 10, Quad-Band GSM/GPRS/EDGE module. Interfaces using USB2.0. Availability: Soon (Hopefully) :-)

3G (UMTS)
3G is, that's right... a bit faster still than EDGE. It was developed before edge, when phones were running at 2.5G. They run in a different part of the spectrum to 2.x G, which cellular operators paid a _fortune_ for a few years ago.

3.5G (HSDPA)
3.5G upgrades the UMTS bitrates using a technology called HSDPA. Because of the higher bandwidths used, these modules are usually interfaces using USB 2.0. As a result, integrating them into a homebrew phone is going to require a Linux driver to be sourced or, more likely, written. It's probably best to stick to the lower speed devices - for now.


 * Telit UC864 : Recently announced module, no specs yet.


 * Sierra Wireless MC8775V : Availability: No Supplier Found


 * Siemens HC25 : Availability: No Supplier Found


 * RFX300-20: This is just a chipset, not a module.

WiFi Modules
There is a very good list of mobile WiFi chipsets on the OpenMoko wiki:

http://wiki.openmoko.org/wiki/WiFi_support_in_OpenMoko

Audio Codecs
UCB????

Wolfson Codecs

LCD Modules
As with many types of components, there are lots of LCD modules avaliable. Here's a short list of ones identified by members as possibilities for various phone projects: